KPL/FK Mars Reconnaissance Orbiter Frames Kernel =============================================================================== This frame kernel contains complete set of frame definitions for the Mars Reconnaissance Orbiter (MRO) spacecraft, its structures and science instruments. This frame kernel also contains name - to - NAIF ID mappings for MRO science instruments and s/c structures (see the last section of the file.) Important Note ------------------------------------------------------------------------------- The instrument frame orientations provided in this version of the FK file are based on the alignment data from PRE-LAUNCH calibration reports and/or NOMINAL instrument design documents. While the PRE-LAUNCH and NOMINAL values give a good approximation of the instrument's orientation, they should be replaced with the more accurate IN-FLIGHT calibrated values to achieve correct instrument pointing computations. Unfortunately, the complete set of IN-FLIGHT calibrated geometric instrument models was not available at the time when this FK was released. As soon as such data become available, the FK will be updated to incorporate it. Version and Date ------------------------------------------------------------------------------- Version 0.1 -- August 23, 2004 -- Boris Semenov, NAIF Added MRO_MME_OF_DATE frame (currently mapped to MARSIAU; when SPICE parameterized frames capability is released, this frame will be redefined as a dynamic frame.) Version 0.0 -- March 15, 2004 -- Boris Semenov, NAIF Initial Release. References ------------------------------------------------------------------------------- 1. ``Frames Required Reading'' 2. ``Kernel Pool Required Reading'' 3. ``C-Kernel Required Reading'' 4. `Mars Reconnaissance Orbiter. GN&S Hardware Coordinate Frame Definitions and Transformations'', Rev. 3, 11/30/99 5. ``CRISM MICD'', Final Update, Oct 7, 2003 6. ``CTX ICD'', Final Update, July 8, 2003 7. ``HIRISE ICD'', Final Update, Oct 17, 2003 8. ``MARCI ICD'', Final Update, Oct 13, 2003 9. ``MCS ICD'', Final Update, Oct 13, 2003 10. ``ONC ICD'', Post-PDR Update, Sep 21, 2002 11. ``SHARAD ICD'', Final Update, Oct 24, 2003 12. Misc. PDR/CDR presentations, 2002/2003 Contact Information ------------------------------------------------------------------------------- Boris V. Semenov, NAIF/JPL, (818)-354-8136, bsemenov@spice.jpl.nasa.gov Implementation Notes ------------------------------------------------------------------------------- This file is used by the SPICE system as follows: programs that make use of this frame kernel must ``load'' the kernel, normally during program initialization. The SPICELIB routine FURNSH/furnsh_c loads a kernel file into the pool as shown below. CALL FURNSH ( 'frame_kernel_name; ) furnsh_c ( "frame_kernel_name" ); This file was created and may be updated with a text editor or word processor. MRO Frames ------------------------------------------------------------------------------- The following MRO frames are defined in this kernel file: Name Relative to Type NAIF ID ====================== ===================== ============ ======= Non Built-in Mars Frames: ------------------------- MRO_MME_OF_DATE rel.to J2000 DYNAMIC -74900 Spacecraft frame: ----------------- MRO_SPACECRAFT rel.to J2000 CK -74000 Science Instrument frames: -------------------------- MRO_CRISM_BASE rel.to SPACECRAFT FIXED -74010 MRO_CRISM_OSU rel.to CRISM_BASE CK -74011 MRO_CRISM_VNIR rel.to CRISM_OSU FIXED -74012 MRO_CRISM_IR rel.to CRISM_OSU FIXED -74013 MRO_CTX_BASE rel.to SPACECRAFT FIXED -74020 MRO_CTX rel.to CTX_BASE FIXED -74021 MRO_HIRISE rel.to SPACECRAFT FIXED -74600 MRO_HIRISE_IF rel.to SPACECRAFT FIXED -74690 MRO_MARCI_BASE rel.to SPACECRAFT FIXED -74400 MRO_MARCI_VIS rel.to MARCI_BASE FIXED -74410 MRO_MARCI_UV rel.to MARCI_BASE FIXED -74420 MRO_MCS_BASE rel.to SPACECRAFT FIXED -74501 MRO_MCS_AZ_GIMBAL_0 rel.to MCS_BASE FIXED -74502 MRO_MCS_AZ_GIMBAL rel.to MCS_AZ_GIMBAL_0 CK -74503 MRO_MCS_EL_GIMBAL_0 rel.to MCS_AZ_GIMBAL FIXED -74504 MRO_MCS_EL_GIMBAL rel.to MCS_EL_GIMBAL_0 CK -74505 MRO_MCS rel.to MCS_EL_GIMBAL FIXED -74500 MRO_ONC rel.to SPACECRAFT FIXED -74030 MRO_SHARAD rel.to SPACECRAFT FIXED -74070 Antenna frames: --------------- MRO_HGA_BASEPLATE rel.to SPACECRAFT FIXED -74211 MRO_HGA_INNER_GIMBAL rel.to HGA_BASEPLATE CK -74212 MRO_HGA_OUTER_GIMBAL rel.to HGA_INNER_GIM CK -74213 MRO_HGA rel.to HGA_OUTER_GIM FIXED -74214 MRO_LGA1 rel.to HGA FIXED -74220 MRO_LGA2 rel.to HGA FIXED -74230 MRO_UHF rel.to SPACECRAFT FIXED -74240 Solar Array frames: ------------------- MRO_SAPX_BASEPLATE rel.to SPACECRAFT FIXED -74311 MRO_SAPX_INNER_GIMBAL rel.to SAPX_BASEPLATE CK -74312 MRO_SAPX_OUTER_GIMBAL rel.to SAPX_INNER_GIM CK -74313 MRO_SAPX rel.to SAPX_OUTER_GIM FIXED -74314 MRO_SAMX_BASEPLATE rel.to SPACECRAFT FIXED -74321 MRO_SAMX_INNER_GIMBAL rel.to SAMX_BASEPLATE CK -74322 MRO_SAMX_OUTER_GIMBAL rel.to SAMX_INNER_GIM CK -74323 MRO_SAMX rel.to SAMX_OUTER_GIM FIXED -74324 MRO Frames Hierarchy ------------------------------------------------------------------------------- The diagram below shows MRO frames hierarchy: "J2000" INERTIAL +------------------------------------------------------------+ | | | | <--pck |<-dynamic | | | | <--pck V | V "IAU_MARS" V "IAU_EARTH" MARS BFR(*) "MRO_MME_OF_DATE" EARTH BFR(*) ----------- ----------------- ------------ | | | "MRO_LGA1" "MRO_LGA2" | ---------- ---------- | ^ ^ | | | | | <--fixed | <--fixed | | | | | | "MRO_SA*X" | | "MRO_HGA" | ---------- | +-----------------+ ^ | ^ | | | fixed--> | | | <--fixed | | | "MRO_SA*X_OUTER_GIMBAL" | "MRO_HGA_OUTER_GIMBAL" ----------------------- | ---------------------- ^ | ^ | | | ck--> | | | <--ck | | | "MRO_SA*X_INNER_GIMBAL" | "MRO_HGA_INNER_GIMBAL" ----------------------- | ---------------------- ^ | ^ | | | ck--> | | | <--ck | | | "MRO_SA*X_BASEPLATE" | "MRO_HGA_BASEPLATE" "MRO_UHF" -------------------- | ------------------- --------- ^ | ^ ^ | | | | fixed--> | |<--ck | <--fixed | <--fdx | | | | | "MRO_SPACECRAFT" | | +-----------------------------------------------------------+ | | | | | | | | | | | | | | <--fxd | | | | | | | | | | | | | V | | | | | | "MRO_SHARAD" | | | | | | ------------ | | | | | | | | | | | | <--fixed | | | | | | | | | | | V | | | | | "MRO_ONC" | | | | | --------- | | | | | | | | | | <--fixed | | | | | | | | | V | | | | "MRO_MCS_BASE" | | | | -------------- | | | | | | | | | | <--fixed | | | | | | | | | V | | | | "MRO_MCS_AZ_GIMBAL_0" | | | | --------------------- | | | | | | | | | | <--ck | | | | | | | | | V | | | | "MRO_MCS_AZ_GIMBAL" | | | | ------------------- | | | | | | | | | | <--fixed | | | | | | | | | V | | | | "MRO_MCS_EL_GIMBAL_0" | | | | ------------------- | | | | | | | | | | <--ck | | | | | | | | | V | | | | "MRO_MCS_EL_GIMBAL" | | | | ------------------- | | | | | | | | | | <--fixed | | | | | | | | | V | | | | "MRO_MCS" | | | | --------- | | | | | | | | | | | | | | | | <--fixed | | | | | | | V | | | "MRO_MARCI_BASE" | | | -------------------------+ | | | | | | | | | <--fixed | <--fixed | | | | | | | | V V | | | "MRO_MARCI_VIS" "MRO_MARCI_UV" | | | --------------- -------------- | | | | | | | | | | | +-------------------+ | | | | | | | <--fixed |<--fixed | | | | | | V V | | "MRO_HIRISE" "MRO_HIRISE_IF" | | ------------ --------------- | | | | | | | | <--fixed | | | V | "MRO_CTX_BASE" | -------------- | | | | <--fixed | | | V | "MRO_CTX" | --------- | | | | <--fixed | V "MRO_CRISM_BASE" ---------------- | | <--ck | V "MRO_CRISM_BASE" -------------------------+ | | | <--fixed | <--fixed | | V V "MRO_CRISM_VNIR" "MRO_CRISM_IR" ---------------- -------------- (*) BFR -- body-fixed rotating frame Non Built-in Mars Frames: ------------------------------------------------------------------------------- The MRO_MME_OF_DATE frame is based on Mean Mars Equator and IAU vector of date computed using IAU 2000 Mars rotation constants. In this version of the FK it is defined as a fixed offset frame mapped to built-in MARSIAU frame. When SPICE parameterized frames capability is released, this frame will be redefined as a dynamic frame. \begindata FRAME_MRO_MME_OF_DATE = -74900 FRAME_-74900_NAME = 'MRO_MME_OF_DATE' FRAME_-74900_CLASS = 4 FRAME_-74900_CLASS_ID = -74900 FRAME_-74900_CENTER = -74 TKFRAME_-74900_SPEC = 'ANGLES' TKFRAME_-74900_RELATIVE = 'MARSIAU' TKFRAME_-74900_ANGLES = ( 0.0, 0.0, 0.0 ) TKFRAME_-74900_AXES = ( 1, 2, 3 ) TKFRAME_-74900_UNITS = 'DEGREES' \begintext Spacecraft Bus Frame ------------------------------------------------------------------------------- The spacecraft frame (or AACS control frame) is defined by the s/c design as follows [from 4]: - Z axis is parallel to the nominal HIRISE boresight; - Y axis is anti-parallel to the MOI thrust vector; - X axis completes the right hand frame; - the origin of the frame is centered on the launch vehicle separation plane. (In [4] this frame is designated as "M" frame.) These diagrams illustrates the s/c frame: -Y view: -------- .o. HGA .' | `. .' | `. ------------------- `. .' `-._______.-' o ____/_\____ / \ / \ Direction / \ of flight \ +Xsc +Ysc (into the page) <------- \ <----x / ..........o | o.......... .-' /| | |\ `-. SAPX .-' / | V +Zsc| \ `-. SAMX .-\\ / |-----------| \ //-. .-' \\ / | | | | \ // `-. -' \\ ./ .___| |___. \. // `- \ \\ .-' .___. `-. // / \ \\-' HiRISE `-// / \ .-' `-. / \ .-' | `-. / -' | `- V Nadir +Z view: -------- . ---- . .' `. HGA .' `. / \ . .-------. . | | o | | . \ / . \ \ / / `. \ / .' `. \ / .' SAPX ` --o-- ' SAMX ========================o_____H_____o======================== | / _ \ | | | '_' | HiRISE |---\___/---| | | Direction | | of flight | +Zsc (out of the page) <------- <----o ____. +Xsc \_|_/ /|\ V +Ysc Since the S/C bus attitude with respect to an inertial frame is provided by a C kernel (see [3] for more information), this frame is defined as a CK-based frame. \begindata FRAME_MRO_SPACECRAFT = -74000 FRAME_-74000_NAME = 'MRO_SPACECRAFT' FRAME_-74000_CLASS = 3 FRAME_-74000_CLASS_ID = -74000 FRAME_-74000_CENTER = -74 CK_-74000_SCLK = -74 CK_-74000_SPK = -74 \begintext MRO Science Instrument Frames ------------------------------------------------------------------------------- This section contains frame definitions for MRO science instruments -- CRISM, CTX, HIRISE, MARCI, MCS, ONC, and SHARAD. CRISM Frames ------------ The following frames are defined for CRISM: - CRISM base frame (MRO_CRISM_BASE) -- fixed w.r.t. and nominally co-aligned with the MRO_SPACECRAFT frame; - CRISM Optical Sensor Unit frame (MRO_CRISM_OSU) -- rotates about +Y axis w.r.t. CRISM_BASE frame (and, therefore, defined as a CK-based frame) and co-aligned with the CRISM_BASE at "0" (nadir) scanner position; - CRISM Visual and Near InfraRed apparent FOV frame (MRO_CRISM_VNIR) -- fixed w.r.t. MRO_CRISM_OSU and nominally co-aligned with it; it has +Z along boresight, +Y along the detector line, and +X completing the right hand frame; - CRISM InfraRed apparent FOV frame (MRO_CRISM_IR) -- fixed w.r.t. MRO_CRISM_OSU and nominally co-aligned with it; it has +Z along boresight, +Y along the detector line, and +X completing the right hand frame; This diagram illustrates CRISM frames for CRISM scanner in "0" (nadir) position: . ---- . .' `. HGA .' `. / \ . .-------. . | | o | | . \ / . \ \ / / `. \ / .' `. \ / .' SAPX ` --o-- ' SAMX ========================o_____H_____o======================== | / _ \ | | | '_' | HiRISE |---\___/---| | ._. | Direction +Xcrism* | | | of flight | <----o| | <------- <----o |___. +Zsc and +Zcrism* +Xsc \_|_| are out of the /|\V+Ycrism* the page V +Ysc The keyword sets below define CRISM frames. IN this version of the FK they incorporate the nominal alignments. \begindata FRAME_MRO_CRISM_BASE = -74010 FRAME_-74010_NAME = 'MRO_CRISM_BASE' FRAME_-74010_CLASS = 4 FRAME_-74010_CLASS_ID = -74010 FRAME_-74010_CENTER = -74 TKFRAME_-74010_SPEC = 'ANGLES' TKFRAME_-74010_RELATIVE = 'MRO_SPACECRAFT' TKFRAME_-74010_ANGLES = ( 0.0, 0.0, 0.0 ) TKFRAME_-74010_AXES = ( 1, 2, 3 ) TKFRAME_-74010_UNITS = 'DEGREES' FRAME_MRO_CRISM_OSU = -74011 FRAME_-74011_NAME = 'MRO_CRISM_OSU' FRAME_-74011_CLASS = 3 FRAME_-74011_CLASS_ID = -74011 FRAME_-74011_CENTER = -74 CK_-74011_SCLK = -74 CK_-74011_SPK = -74 FRAME_MRO_CRISM_VNIR = -74012 FRAME_-74012_NAME = 'MRO_CRISM_VNIR' FRAME_-74012_CLASS = 4 FRAME_-74012_CLASS_ID = -74012 FRAME_-74012_CENTER = -74 TKFRAME_-74012_SPEC = 'ANGLES' TKFRAME_-74012_RELATIVE = 'MRO_CRISM_OSU' TKFRAME_-74012_ANGLES = ( 0.0, 0.0, 0.0 ) TKFRAME_-74012_AXES = ( 1, 2, 3 ) TKFRAME_-74012_UNITS = 'DEGREES' FRAME_MRO_CRISM_IR = -74013 FRAME_-74013_NAME = 'MRO_CRISM_IR' FRAME_-74013_CLASS = 4 FRAME_-74013_CLASS_ID = -74013 FRAME_-74013_CENTER = -74 TKFRAME_-74013_SPEC = 'ANGLES' TKFRAME_-74013_RELATIVE = 'MRO_CRISM_OSU' TKFRAME_-74013_ANGLES = ( 0.0, 0.0, 0.0 ) TKFRAME_-74013_AXES = ( 1, 2, 3 ) TKFRAME_-74013_UNITS = 'DEGREES' \begintext CTX Frames ---------- The following frames are defined for CTX: - CTX base frame (MRO_CTX_BASE) -- fixed w.r.t. and nominally co-aligned with the MRO_SPACECRAFT frame; - CTX apparent FOV frame (MRO_CTX) -- fixed w.r.t. MRO_CTX_BASE and nominally co-aligned with it; it has +Z along boresight, +Y along the detector line, and +X completing the right hand frame; This diagram illustrates CTX frames: . ---- . .' `. HGA .' `. / \ . .-------. . | | o | | . \ / . \ \ / / `. \ / .' `. \ / .' SAPX ` --o-- ' SAMX ========================o_____H_____o======================== | / _ \ | | ' ' | |--- <----o | | +Xctx* | | Direction | | | of flight | V +Yctx* <------- <----o ____. +Zsc and +Zctx* +Xsc \_|_ are out of the /|\ the page V +Ysc The keyword sets below define CTX frames. In this version of the FK they incorporate the nominal alignments. \begindata FRAME_MRO_CTX_BASE = -74020 FRAME_-74020_NAME = 'MRO_CTX_BASE' FRAME_-74020_CLASS = 4 FRAME_-74020_CLASS_ID = -74020 FRAME_-74020_CENTER = -74 TKFRAME_-74020_SPEC = 'ANGLES' TKFRAME_-74020_RELATIVE = 'MRO_SPACECRAFT' TKFRAME_-74020_ANGLES = ( 0.0, 0.0, 0.0 ) TKFRAME_-74020_AXES = ( 1, 2, 3 ) TKFRAME_-74020_UNITS = 'DEGREES' FRAME_MRO_CTX = -74021 FRAME_-74021_NAME = 'MRO_CTX' FRAME_-74021_CLASS = 4 FRAME_-74021_CLASS_ID = -74021 FRAME_-74021_CENTER = -74 TKFRAME_-74021_SPEC = 'ANGLES' TKFRAME_-74021_RELATIVE = 'MRO_CTX_BASE' TKFRAME_-74021_ANGLES = ( 0.0, 0.0, 0.0 ) TKFRAME_-74021_AXES = ( 1, 2, 3 ) TKFRAME_-74021_UNITS = 'DEGREES' \begintext HIRISE Frames ------------- The following frames are defined for HIRISE: - HIRISE optics frame (MRO_HIRISE) -- fixed w.r.t. and nominally co-aligned with the MRO_SPACECRAFT frame; it has +Z along boresight, +Y along the detector lines, and +X completing the right hand frame; - HIRISE mechanical interface frame (MRO_HIRISE_IF) -- fixed w.r.t. MRO_SPACECRAFT and is nominally rotated from it by -0.45 degrees about +Y axis; This diagram illustrates HIRISE frames: .o. HGA .' | `. .' | `. ------------------- `. .' `-._______.-' o ____/_\____ / \ / \ Direction / \ of flight \ +Xsc +Ysc (into the page) <------- \ <----x / ..........o | o.......... .-' /| | |\ `-. SAPX .-' V +Zsc| \ `-. SAMX .-\\ +Xhirise* -------| \ //-. .-' \\ <----o HiRISE \ // `-. -' \\ ./ .___| | |___. \. // `- \ \\ .-' ._|_. `-. // / \ \\-' V `-// / \ .-' +Zhirise* `-. / \ .-' `-. / `-' 0.45 deg ->||<- `-' || VV +Zhirise_if +Zhirise (co-aligned with s/c +Z) | | Nadir V The keyword sets below define HIRISE frames. In this version of the FK they incorporate the nominal alignments. \begindata FRAME_MRO_HIRISE = -74600 FRAME_-74600_NAME = 'MRO_HIRISE' FRAME_-74600_CLASS = 4 FRAME_-74600_CLASS_ID = -74600 FRAME_-74600_CENTER = -74 TKFRAME_-74600_SPEC = 'ANGLES' TKFRAME_-74600_RELATIVE = 'MRO_SPACECRAFT' TKFRAME_-74600_ANGLES = ( 0.0, 0.0, 0.0 ) TKFRAME_-74600_AXES = ( 1, 2, 3 ) TKFRAME_-74600_UNITS = 'DEGREES' FRAME_MRO_HIRISE_IF = -74690 FRAME_-74690_NAME = 'MRO_HIRISE_IF' FRAME_-74690_CLASS = 4 FRAME_-74690_CLASS_ID = -74690 FRAME_-74690_CENTER = -74 TKFRAME_-74690_SPEC = 'ANGLES' TKFRAME_-74690_RELATIVE = 'MRO_SPACECRAFT' TKFRAME_-74690_ANGLES = ( 0.0, 0.45, 0.0 ) TKFRAME_-74690_AXES = ( 1, 2, 3 ) TKFRAME_-74690_UNITS = 'DEGREES' \begintext MARCI Frames ---------- The following frames are defined for MARCI: - MARCI base frame (MRO_MARCI_BASE) -- fixed w.r.t. and rotated by +5 degrees about +Z axis w.r.t. the MRO_SPACECRAFT frame; - MARCI apparent VIS FOV frame (MRO_MARCI_VIS) -- fixed w.r.t. MRO_MARCI_BASE and nominally co-aligned with it; it has +Z along boresight, +Y along the detector lines, and +X completing the right hand frame; - MARCI apparent UV FOV frame (MRO_MARCI_UV) -- fixed w.r.t. MRO_MARCI_BASE and nominally co-aligned with it; it has +Z along boresight, +Y along the detector lines, and +X completing the right hand frame; This diagram illustrates MARCI frames: . ---- . .' `. HGA .' `. / \ . .-------. . | | o | | . \ / . \ \ / / `. \ / .' `. \ / .' SAPX ` --o-- ' SAMX ========================o_____H_____o======================== | / _ \ | | | '_' | HiRISE |-- \___/ --| | | ----- +Xmarci* .-o | +5 deg <-' |` | .-' +Xsc <`---o ____. +Zsc and +Zmarci* -' V\_|_/ are out of the +Ymarci* /|\ the page V <------- +Ysc Direction of flight The keyword sets below define MARCI frames. In this version of the FK they incorporate the nominal alignments. \begindata FRAME_MRO_MARCI_BASE = -74400 FRAME_-74400_NAME = 'MRO_MARCI_BASE' FRAME_-74400_CLASS = 4 FRAME_-74400_CLASS_ID = -74400 FRAME_-74400_CENTER = -74 TKFRAME_-74400_SPEC = 'ANGLES' TKFRAME_-74400_RELATIVE = 'MRO_SPACECRAFT' TKFRAME_-74400_ANGLES = ( 0.0, 0.0, -5.0 ) TKFRAME_-74400_AXES = ( 1, 2, 3 ) TKFRAME_-74400_UNITS = 'DEGREES' FRAME_MRO_MARCI_VIS = -74410 FRAME_-74410_NAME = 'MRO_MARCI_VIS' FRAME_-74410_CLASS = 4 FRAME_-74410_CLASS_ID = -74410 FRAME_-74410_CENTER = -74 TKFRAME_-74410_SPEC = 'ANGLES' TKFRAME_-74410_RELATIVE = 'MRO_MARCI_BASE' TKFRAME_-74410_ANGLES = ( 0.0, 0.0, 0.0 ) TKFRAME_-74s041_AXES = ( 1, 2, 3 ) TKFRAME_-74410_UNITS = 'DEGREES' FRAME_MRO_MARCI_UV = -74420 FRAME_-74420_NAME = 'MRO_MARCI_UV' FRAME_-74420_CLASS = 4 FRAME_-74420_CLASS_ID = -74420 FRAME_-74420_CENTER = -74 TKFRAME_-74420_SPEC = 'ANGLES' TKFRAME_-74420_RELATIVE = 'MRO_MARCI_BASE' TKFRAME_-74420_ANGLES = ( 0.0, 0.0, 0.0 ) TKFRAME_-74420_AXES = ( 1, 2, 3 ) TKFRAME_-74420_UNITS = 'DEGREES' \begintext MCS Frames ---------- The following frames are defined for MCS: - MCS base frame (MRO_MCS_BASE) -- fixed w.r.t. and nominally co-aligned with the MRO_SPACECRAFT frame; the definition of this frame incorporates instrument misalignment determined by measuring the alignment cube orientation w.r.t. to the spacecraft at the time of instrument installation; - MCS Azimuth Gimbal "Zero" position frame (MRO_MCS_AZ_GIMBAL_0) -- fixed w.r.t. MCS_BASE frame and is nominally rotated from it about +Z axis by negative of the [TBD] angle, required to align the telescope boresight(s) with the -Y axis of MCS_BASE frame; - MCS Azimuth Gimbal frame (MRO_MCS_AZ_GIMBAL) -- rotates about +Z axis by AZ angle w.r.t. MCS_AZ_GIMBAL_0 frame (and, therefore, defined as a CK-based frame) and co-aligned with the MCS_AZ_GIMBAL_0 at "0" azimuth scanner position; - MCS Elevation Gimbal "Zero" position frame (MRO_MCS_EL_GIMBAL_0) -- fixed w.r.t. MCS_AZ_GIMBAL frame and is nominally rotated from it about +X axis by negative of the [TBD] angle, required to align the telescope boresight(s) with the -Y axis of MCS_BASE frame; - MCS Elevation Gimbal frame (MRO_MCS_EL_GIMBAL) -- rotates about +X axis by EL angle w.r.t. MCS_EL_GIMBAL_0 frame (and, therefore, defined as a CK-based frame) and co-aligned with the MCS_EL_GIMBAL_0 at "0" elevation scanner position; - MCS apparent FOV frame (MRO_MCS) -- it has +Z axis along instrument boresight, +X axis along the detector lines (pointing away from the base when boresight is along -Y axis of the MCS_BASE frame); this frame is fixed w.r.t. MRO_MCS_EL_GIMBAL and nominally rotated from it by -90 deg about +Y axis and then by +90 deg about +X; Assuming that in (0,0) angle position the telescope boresight is pointing along the s/c -Y axis, nominally these five MCS frames -- BASE, AZ_GIMBAL_0, AZ_GIMBAL, EL_GIMBAL_0, and EL_GIMBAL -- will be co-aligned in that position while the MRO_MCS frame will be rotated from them as described above. This diagram illustrates this: . ---- . .' `. HGA .' `. / \ . .-------. . | | o | | . \ / . \ \ / / `. \ / .' `. \ / .' SAPX ` --o-- ' SAMX ========================o_____H_____o======================== | | | ^ +Zmcs (boresight) |--- | --| | | | +Xmcs_base <----o----> +Ymcs | | | <------- +Xsc <----o|____. Direction \_|V +Ymcs_base +Zsc, +Zmcs_base, +Xmcs of flight /|\ and nadir are out of V the page +Ysc *_GIMBAL_0 and *_GIMBAL frames are co-aligned with the BASE frame Azimuth rotation is about +Zmcs_base Elevation rotation is about +Xmcs_base The keyword sets below define MCS frames. In this version of the FK they incorporate the nominal alignments. \begindata FRAME_MRO_MCS_BASE = -74501 FRAME_-74501_NAME = 'MRO_MCS_BASE' FRAME_-74501_CLASS = 4 FRAME_-74501_CLASS_ID = -74501 FRAME_-74501_CENTER = -74 TKFRAME_-74501_SPEC = 'ANGLES' TKFRAME_-74501_RELATIVE = 'MRO_SPACECRAFT' TKFRAME_-74501_ANGLES = ( 0.0, 0.0, 0.0 ) TKFRAME_-74501_AXES = ( 1, 2, 3 ) TKFRAME_-74501_UNITS = 'DEGREES' FRAME_MRO_MCS_AZ_GIMBAL_0 = -74502 FRAME_-74502_NAME = 'MRO_MCS_AZ_GIMBAL_0' FRAME_-74502_CLASS = 4 FRAME_-74502_CLASS_ID = -74502 FRAME_-74502_CENTER = -74 TKFRAME_-74502_SPEC = 'ANGLES' TKFRAME_-74502_RELATIVE = 'MRO_MCS_BASE' TKFRAME_-74502_ANGLES = ( 0.0, 0.0, 0.0 ) TKFRAME_-74502_AXES = ( 1, 2, 3 ) TKFRAME_-74502_UNITS = 'DEGREES' FRAME_MRO_MCS_AZ_GIMBAL = -74503 FRAME_-74503_NAME = 'MRO_MCS_AZ_GIMBAL' FRAME_-74503_CLASS = 3 FRAME_-74503_CLASS_ID = -74503 FRAME_-74503_CENTER = -74 CK_-74503_SCLK = -74 CK_-74503_SPK = -74 FRAME_MRO_MCS_EL_GIMBAL_0 = -74504 FRAME_-74504_NAME = 'MRO_MCS_EL_GIMBAL_0' FRAME_-74504_CLASS = 4 FRAME_-74504_CLASS_ID = -74504 FRAME_-74504_CENTER = -74 TKFRAME_-74504_SPEC = 'ANGLES' TKFRAME_-74504_RELATIVE = 'MRO_MCS_AZ_GIMBAL' TKFRAME_-74504_ANGLES = ( 0.0, 0.0, 0.0 ) TKFRAME_-74504_AXES = ( 1, 2, 3 ) TKFRAME_-74504_UNITS = 'DEGREES' FRAME_MRO_MCS_EL_GIMBAL = -74505 FRAME_-74505_NAME = 'MRO_MCS_EL_GIMBAL' FRAME_-74505_CLASS = 3 FRAME_-74505_CLASS_ID = -74505 FRAME_-74505_CENTER = -74 CK_-74505_SCLK = -74 CK_-74505_SPK = -74 FRAME_MRO_MCS = -74500 FRAME_-74500_NAME = 'MRO_MCS' FRAME_-74500_CLASS = 4 FRAME_-74500_CLASS_ID = -74500 FRAME_-74500_CENTER = -74 TKFRAME_-74500_SPEC = 'ANGLES' TKFRAME_-74500_RELATIVE = 'MRO_MCS_EL_GIMBAL' TKFRAME_-74500_ANGLES = ( 0.0, 90.0, -90.0 ) TKFRAME_-74500_AXES = ( 3, 2, 1 ) TKFRAME_-74500_UNITS = 'DEGREES' \begintext ONC Frames ---------- The following frame is defined for ONC: - ONC apparent FOV frame (MRO_ONC) -- fixed w.r.t. MRO_SPACECRAFT and has +Z along boresight, +X along the detector lines, and +Y completing the right hand frame; ONC is mounted on the -Z side of the s/c and points approximately 30 degrees off the s/c +Y axis towards s/c -Z axis and sightly to the +X s/c side. These diagrams illustrate the ONC frame orientation: +X side view: ------------- HGA |`. | \ .'| .._ ,' | | | +Xsc and +Xonc are o | | | put of the page. `-. | | | `| '|.' | / || |.' |/ o SAPX \_==================== \ / \_____. Nadir \ / \___/ HiRISE ---> .----------\. +Yonc <. | | `. | | `o| +Xsc | / .____ o----> +Zsc / \_|_/ V /|\ +Zonc V +Ysc / | /<---->| 29.6 deg (projected on s/c Y-Z plane) -Z side view: ------------- . ---- . .' `. HGA .' o `. / | \ . | . | o | . .' `. . \ o' `o / `. .' `. .' SAMX ` --o-- ' SAPX ========================o_____H_____o======================== | | | | |-----------| | .>| | .' +Xonc | o' | .____ x\---> +Xsc \_|_\ +Zsc is into /|\ V the page V +Zonc +Ysc +Yonc is out of the page | \ |<---->\ 5.7 deg (projected on s/c X-Y plane) The s/c frame can be transformed into the ONC frame in nominal orientation by the following three rotations (derived from the projected angles shown above): first by -119.6 degrees about +X, second by +4.96 degrees about +Y and finally by [TBD] degrees about +Z. (The third rotation is not derivable from projected angles and is assumed to be zero.) The keyword set below defines the ONC frame. In this version of the FK it incorporates the nominal alignments. (The frame definitions below contain the opposite of these rotations because Euler angles specified in then define transformations from ONC frames to the s/c frame -- see [1].) \begindata FRAME_MRO_ONC = -74030 FRAME_-74030_NAME = 'MRO_ONC' FRAME_-74030_CLASS = 4 FRAME_-74030_CLASS_ID = -74030 FRAME_-74030_CENTER = -74 TKFRAME_-74030_SPEC = 'ANGLES' TKFRAME_-74030_RELATIVE = 'MRO_SPACECRAFT' TKFRAME_-74030_ANGLES = ( 119.6, -4.96, 0.0 ) TKFRAME_-74030_AXES = ( 1, 2, 3 ) TKFRAME_-74030_UNITS = 'DEGREES' \begintext SHARAD Frames ---------- The following frame is defined for SHARAD: - SHARAD frame (MRO_SHARAD) -- fixed w.r.t. MRO_SPACECRAFT and nominally co-aligned with it; The keyword set below defines the SHARAD frame. In this version of the FK it incorporates the nominal alignments. \begindata FRAME_MRO_SHARAD = -74070 FRAME_-74070_NAME = 'MRO_SHARAD' FRAME_-74070_CLASS = 4 FRAME_-74070_CLASS_ID = -74070 FRAME_-74070_CENTER = -74 TKFRAME_-74070_SPEC = 'ANGLES' TKFRAME_-74070_RELATIVE = 'MRO_SPACECRAFT' TKFRAME_-74070_ANGLES = ( 0.0, 0.0, 0.0 ) TKFRAME_-74070_AXES = ( 1, 2, 3 ) TKFRAME_-74070_UNITS = 'DEGREES' \begintext MRO Antenna Frames ------------------------------------------------------------------------------- This section contains frame definitions for MRO antennas -- HGA, LGA1, LGA2, and UHF. High Gain Antenna Frame ----------------------- The HGA boresight frame -- MRO_HGA -- is defined as follows: - Z axis is along the HGA reflector central symmetry axis (boresight axis) and points from the reflector surface towards the feed horn; - Y axis is parallel to the inner gimbal rotation axis and points from the gimbal towards the antenna center; - X axis completes to the right hand frame; - the origin of this frame is located at the intersection of the antenna reflector symmetry axis and a plane containing HGA reflector rim circle. In stowed configuration HGA boresight (+Z axis) points approximately along S/C -Y axis (14.5 degrees off it towards +Z.) In deployed configuration orientation of the HGA with respect to the s/c varies as the HGA moves constantly using two gimbals to track Earth. HGA Baseplate and Gimbal Drive Frames ------------------------------------- The frame chain for HGA includes: - baseplate frame that is fixed w.r.t. to the s/c frame - inner gimbal frame that rotates w.r.t. to the baseplate frame - outer gimbal frame rotates w.r.t. to the inner gimbal frame - boresight frame (described above) that is fixed w.r.t. to the outer gimbal frame. In "0" angle position the baseplate frame, both gimbal frames, and the boresight frame are co-aligned. The MRO HGA baseplate frame is defined as follows: - +Z axis is s/c -Z axis; - +Y axis is s/c -Y axis; - +X axis completes the right hand frame and is parallel to the s/c +X axis - the origin of this frame is located at the intersection of the inner gimbal rotation axis and a plane perpendicular to this rotation axis and containing the outer gimbal rotation axis. The MRO HGA inner gimbal frame: - Y axis is along the inner gimbal rotation axis; in deployed configuration with the inner and outer gimbal angles set to zero it points along the baseplate frame +Y axis; - X axis is such that in deployed configuration with the inner and outer gimbal angles set to zero it points along the baseplate frame +X axis; - Z axis completes the right hand frame and in deployed configuration with the inner and outer gimbal angles set to zero it points along the baseplate frame +Z axis; - the origin of this frame is located at the intersection of the inner gimbal rotation axis and a plane perpendicular to this rotation axis and containing the outer gimbal rotation axis. The MRO HGA outer gimbal frame: - X axis is along the outer gimbal rotation axis and points along the baseplate +X in deployed configuration with the inner and outer gimbal angles set to zero; - Y axis is such that in deployed configuration with the inner and outer gimbal angles set to zero it points along the baseplate +Y axis; - Z axis completes to the right hand frame and in deployed configuration with the inner and outer gimbal angles set to zero it points along the baseplate +Z axis; - the origin of this frame is located at the intersection of the outer gimbal rotation axis and a plane perpendicular to this rotation axis and containing the HGA frame origin; When antenna is deployed and both gimbals are in zero position, the axes of the baseplate, inner gimbal, outer gimbal and HGA frames are co-aligned. The diagram below illustrates this: | HGA Inner . Gimbal Axis | . ---- . .' +Yhga `. HGA (shown in "0" angle .' ^ `. position) / | \ .+Xhga.---|---. . | <----x | . \ +Yhgabp . \ \ ^ +Yhgaig/ +Xhgabp \ | +Yhgaog +Xhgaig. \| .' -- . -- . - +Xhgaog <----x --' SAMX HGA Outer ======o_____H_____o======================== Gimbal Axis | / _ \ | | | '_' | HiRISE |---\___/---| | | Direction | | of flight | +Zsc (out of the page) <------- <----o ____. +Xsc \_|_/ /|\ V +Ysc +Zhga, +Zhgabp, +Zhgaig, and +Zhgaog are into the page The gimbal frames are defined such that rotation axis designations are consistent with [4]. HGA Frame Definitions --------------------- The sets of keywords below contain definitions for the HGA frames. \begindata FRAME_MRO_HGA_BASEPLATE = -74211 FRAME_-74211_NAME = 'MRO_HGA_BASEPLATE' FRAME_-74211_CLASS = 4 FRAME_-74211_CLASS_ID = -74211 FRAME_-74211_CENTER = -74 TKFRAME_-74211_SPEC = 'ANGLES' TKFRAME_-74211_RELATIVE = 'MRO_SPACECRAFT' TKFRAME_-74211_ANGLES = ( 0.0, 0.0, 180.0 ) TKFRAME_-74211_AXES = ( 3, 2, 1 ) TKFRAME_-74211_UNITS = 'DEGREES' FRAME_MRO_HGA_INNER_GIMBAL = -74212 FRAME_-74212_NAME = 'MRO_HGA_INNER_GIMBAL' FRAME_-74212_CLASS = 3 FRAME_-74212_CLASS_ID = -74212 FRAME_-74212_CENTER = -74 CK_-74212_SCLK = -74 CK_-74212_SPK = -74 FRAME_MRO_HGA_OUTER_GIMBAL = -74213 FRAME_-74213_NAME = 'MRO_HGA_OUTER_GIMBAL' FRAME_-74213_CLASS = 3 FRAME_-74213_CLASS_ID = -74213 FRAME_-74213_CENTER = -74 CK_-74213_SCLK = -74 CK_-74213_SPK = -74 FRAME_MRO_HGA = -74214 FRAME_-74214_NAME = 'MRO_HGA' FRAME_-74214_CLASS = 4 FRAME_-74214_CLASS_ID = -74214 FRAME_-74214_CENTER = -74 TKFRAME_-74214_SPEC = 'ANGLES' TKFRAME_-74214_RELATIVE = 'MRO_HGA_OUTER_GIMBAL' TKFRAME_-74214_ANGLES = ( 0.0, 0.0, 0.0 ) TKFRAME_-74214_AXES = ( 3, 2, 1 ) TKFRAME_-74214_UNITS = 'DEGREES' \begintext Low Gain Antennas ----------------- Both LGA boresight frames -- MRO_LGA1 and MRO_LGA2 -- are defined as follows: - +Z axis is along the LGA boresight vector; - +X axis is along the HGA +X axis; - +Y completes the right hand frame; - the origin of the frame is located at the center of the LGA patch. Both LGAs are mounted on and do not move with respect to the HGA. Therefore their frames are specified as fixed offset frames with respect to the HGA boresight frame. According to [4] the LGA boresights point along the following directions in HGA frame: LGA1 (truss-mounted LGA) -- (0.0, -0.422618, 0.906308) LGA2 (TWTA-mounted LGA) -- (0.0, 0.906308, -0.422618) The diagram below illustrates the LGA1 and LGA2 frames: ^ +Ylga1 \ \ .o LGA1 HGA is shown in +Zlga1 .-' |`. "0" angle position. <' ^ +Yhga | .._ +Xsc, +Xhga, +Xlga1, and +Zhga | | | +Xlga2 are out of <----o | | ^ +Zlga2 the page. | | | / | '|.'/ | LGA2 o |.' |/ `. +Ylga2 o `> SAPX \_==================== \ / \_____. \ / \___/ HiRISE .----------\. | | | | | +Xsc | .____ o----> +Zsc -------> \_|_/ Nadir /|\ V +Ysc As seen on the diagram the LGA1 frame is rotated from the HGA frame by +25 degrees about +X while the LGA2 frame is rotated by -115 degrees from HGA frame about +X. (The frame definitions below contain the opposite of these rotations because Euler angles specified in then define transformations from LGA frames to the HGA frame -- see [1].) \begindata FRAME_MRO_LGA1 = -74220 FRAME_-74220_NAME = 'MRO_LGA1' FRAME_-74220_CLASS = 4 FRAME_-74220_CLASS_ID = -74220 FRAME_-74220_CENTER = -74 TKFRAME_-74220_SPEC = 'ANGLES' TKFRAME_-74220_RELATIVE = 'MRO_HGA' TKFRAME_-74220_ANGLES = ( 0.0, 0.0, -25.0 ) TKFRAME_-74220_AXES = ( 3, 2, 1 ) TKFRAME_-74220_UNITS = 'DEGREES' FRAME_MRO_LGA2 = -74230 FRAME_-74230_NAME = 'MRO_LGA2' FRAME_-74230_CLASS = 4 FRAME_-74230_CLASS_ID = -74230 FRAME_-74230_CENTER = -74 TKFRAME_-74230_SPEC = 'ANGLES' TKFRAME_-74230_RELATIVE = 'MRO_HGA' TKFRAME_-74230_ANGLES = ( 0.0, 0.0, 115.0 ) TKFRAME_-74230_AXES = ( 3, 2, 1 ) TKFRAME_-74230_UNITS = 'DEGREES' \begintext UHF Antenna ----------- The UHF frame -- MRO_UHF -- is defined as follows: - +Z axis is along the antenna boresight and co-aligned with the s/c +Z axis; - +Y axis is co-aligned with the s/c +Y axis; - +X completes the right hand frame; - the origin of this frame is located at the geometric center of the antenna. Since UHF antenna is rigidly mounted on the s/c bus, it is defined as a fixed offset frame co-aligned with the s/c frame. (The frame definition below contains the opposite of this rotation because Euler angles specified in it define transformation from antenna to s/c frame -- see [1].) \begindata FRAME_MRO_UHF = -74240 FRAME_-74240_NAME = 'MRO_UHF' FRAME_-74240_CLASS = 4 FRAME_-74240_CLASS_ID = -74240 FRAME_-74240_CENTER = -74 TKFRAME_-74240_SPEC = 'ANGLES' TKFRAME_-74240_RELATIVE = 'MRO_SPACECRAFT' TKFRAME_-74240_ANGLES = ( 0.0, 0.0, 0.0 ) TKFRAME_-74240_AXES = ( 3, 2, 1 ) TKFRAME_-74240_UNITS = 'DEGREES' \begintext MRO Solar Array Frames ------------------------------------------------------------------------------- This section contains frame definitions for MRO Solar Array frames. Solar Array Frames ------------------ Both SA frames -- MRO_SAPX and MRO_SAMX -- are defined as follows: - +Z axis is perpendicular to and points away from the array solar cell side (note that this is different from [4] where SAMX +Z axis is defined to point away from the non-cell side of the array); - +X axis parallel to the long side of the array and points from the end of the array towards the gimbal; - +Y axis completes the right hand frame; - the origin of this frame is located at the intersection of the inner gimbal rotation axis and a plane perpendicular to this rotation axis and containing the outer gimbal rotation axis. When SAs are deployed they move constantly using two gimbals to track Sun. Solar Array Gimbal Drive Frames ------------------------------- The frame chain for each of the arrays includes: - baseplate frame that is fixed w.r.t. to the s/c frame - inner gimbal frame that rotates w.r.t. to the baseplate frame - outer gimbal frame that rotates w.r.t. to the inner gimbal frame - boresight frame (described above) that is fixed w.r.t. to the outer gimbal frame. When SAPX is in "0" angle position its baseplate frame, both gimbal frames, and the boresight frame are co-aligned. When SAMX is in "0" angle position its baseplate frame and both gimbal frames are co-aligned while the boresight frame is rotated by 180 degrees about +X axis w.r.t. to them. The MRO SAPX baseplate frame is defined as follows: - +Z axis is s/c -Y axis; - +Y axis is along the inner gimbal rotation axis and points towards the HGA side of the deck; - +X axis completes the right hand frame and is along the outer gimbal rotation axis; - the origin of this frame is located at the intersection of the inner gimbal rotation axis and a plane perpendicular to this rotation axis and containing the outer gimbal rotation axis. The MRO SAMX baseplate frame is defined as follows: - +Z axis is s/c +Y axis; - +Y axis is along the inner gimbal rotation axis and points towards HGA side of the deck; - +X axis completes the right hand frame and is along the outer gimbal rotation axis; - the origin of this frame is located at the intersection of the inner gimbal rotation axis and a plane perpendicular to this rotation axis and containing the outer gimbal rotation axis. The MRO SAPX and SAMX inner gimbal frame: - +Y axis is along the inner gimbal rotation axis; in deployed configuration with the inner and outer gimbal angles set to zero it points along the baseplate +Y axis; - +X axis is such that in deployed configuration with the inner and outer gimbal angles set to zero it points along the baseplate +X axis; - +Z axis completes to the right hand frame and in deployed configuration wit the inner and outer gimbal angles set to zero it points along the baseplate +Z axis; - the origin of this frame is located at the intersection of the inner gimbal rotation axis and a plane perpendicular to this rotation axis and containing the outer gimbal rotation axis. The MRO SA outer gimbal frame: - +X axis is along the outer gimbal rotation axis and points along the baseplate +X in deployed configuration with the inner and outer gimbal angles set to zero; - +Y axis is such that in deployed configuration with the inner and outer gimbal angles set to zero it points along the baseplate +Y axis; - Z axis completes to the right hand frame and in deployed configuration with the inner and outer gimbal angles set to zero it points along the s/c +Z axis; - the origin of this frame is located at the intersection of the outer gimbal rotation axis and a plane perpendicular to this rotation axis and containing the solar array frame origin; The diagram below illustrates the solar array baseplate, gimbal and cell-side frames in deployed "0" angle configuration: .o. HGA .' | `. .' | `. +Zsapx** and +Zsamx ------------------- are out of the page `. .' `-._______.-' +Zsamx** are into o the page ____/_\____ / \ +Ysapxbp / +Xsa*x** \ +Ysamxbp +Ysapxig ^ ^ +Ysamxig +Ysapxog \ .> <. / +Ysamxog +Ysapx \ .' `. / ..........o' `x.......... .-' /| /|\ `-. SAPX .-' / | +Ysamx / | \ `-. SAMX .-\\ / |------- v -| \ //-. .-' \\ / | | | \ // `-. -' \\ ./ .___| |___. \. // `- \ \\ .-' .___. `-. // / \ \\-' HiRISE `-// / \ .-' `-. / \ .-' `-. / -' +Xsc <----x +Ysc (into the page) `- | | <------- V Direction +Zsc of flight | | Nadir V The gimbal frames are defined such that rotation axis designations are consistent with [4]. Also according to [4] the SAPX and SAMX baseplate frames are rotated w.r.t. to the s/c frame as follows: SAPX: first by +165 degrees about +Y, then by +90 deg about +X SAPX: first by +15 degrees about +Y, then by -90 deg about +X Solar Array Frames Definitions ----------------------------- Two sets of keywords below contain definitions for these frames. \begindata FRAME_MRO_SAPX_BASEPLATE = -74311 FRAME_-74311_NAME = 'MRO_SAPX_BASEPLATE' FRAME_-74311_CLASS = 4 FRAME_-74311_CLASS_ID = -74311 FRAME_-74311_CENTER = -74 TKFRAME_-74311_SPEC = 'ANGLES' TKFRAME_-74311_RELATIVE = 'MRO_SPACECRAFT' TKFRAME_-74311_ANGLES = ( 0.0, -165.0, -90.0 ) TKFRAME_-74311_AXES = ( 3, 2, 1 ) TKFRAME_-74311_UNITS = 'DEGREES' FRAME_MRO_SAPX_INNER_GIMBAL = -74312 FRAME_-74312_NAME = 'MRO_SAPX_INNER_GIMBAL' FRAME_-74312_CLASS = 3 FRAME_-74312_CLASS_ID = -74312 FRAME_-74312_CENTER = -74 CK_-74312_SCLK = -74 CK_-74312_SPK = -74 FRAME_MRO_SAPX_OUTER_GIMBAL = -74313 FRAME_-74313_NAME = 'MRO_SAPX_OUTER_GIMBAL' FRAME_-74313_CLASS = 3 FRAME_-74313_CLASS_ID = -74313 FRAME_-74313_CENTER = -74 CK_-74313_SCLK = -74 CK_-74313_SPK = -74 FRAME_MRO_SAPX = -74314 FRAME_-74314_NAME = 'MRO_SAPX' FRAME_-74314_CLASS = 4 FRAME_-74314_CLASS_ID = -74314 FRAME_-74314_CENTER = -74 TKFRAME_-74314_SPEC = 'ANGLES' TKFRAME_-74314_RELATIVE = 'MRO_SAPX_OUTER_GIMBAL' TKFRAME_-74314_ANGLES = ( 0.0, 0.0, 0.0 ) TKFRAME_-74314_AXES = ( 3, 2, 1 ) TKFRAME_-74314_UNITS = 'DEGREES' FRAME_MRO_SAMX_BASEPLATE = -74321 FRAME_-74321_NAME = 'MRO_SAMX_BASEPLATE' FRAME_-74321_CLASS = 4 FRAME_-74321_CLASS_ID = -74321 FRAME_-74321_CENTER = -74 TKFRAME_-74321_SPEC = 'ANGLES' TKFRAME_-74321_RELATIVE = 'MRO_SPACECRAFT' TKFRAME_-74321_ANGLES = ( 0.0, -15.0, 90.0 ) TKFRAME_-74321_AXES = ( 3, 2, 1 ) TKFRAME_-74321_UNITS = 'DEGREES' FRAME_MRO_SAMX_INNER_GIMBAL = -74322 FRAME_-74322_NAME = 'MRO_SAMX_INNER_GIMBAL' FRAME_-74322_CLASS = 3 FRAME_-74322_CLASS_ID = -74322 FRAME_-74322_CENTER = -74 CK_-74322_SCLK = -74 CK_-74322_SPK = -74 FRAME_MRO_SAMX_OUTER_GIMBAL = -74323 FRAME_-74323_NAME = 'MRO_SAMX_OUTER_GIMBAL' FRAME_-74323_CLASS = 3 FRAME_-74323_CLASS_ID = -74323 FRAME_-74323_CENTER = -74 CK_-74323_SCLK = -74 CK_-74323_SPK = -74 FRAME_MRO_SAMX = -74324 FRAME_-74324_NAME = 'MRO_SAMX' FRAME_-74324_CLASS = 4 FRAME_-74324_CLASS_ID = -74324 FRAME_-74324_CENTER = -74 TKFRAME_-74324_SPEC = 'ANGLES' TKFRAME_-74324_RELATIVE = 'MRO_SAMX_OUTER_GIMBAL' TKFRAME_-74324_ANGLES = ( 0.0, 0.0, 180.0 ) TKFRAME_-74324_AXES = ( 3, 2, 1 ) TKFRAME_-74324_UNITS = 'DEGREES' \begintext Mars Reconnaissance Orbiter NAIF ID Codes -- Definitions ======================================================================== This section contains name to NAIF ID mappings for the MRO mission. Once the contents of this file is loaded into the KERNEL POOL, these mappings become available within SPICE, making it possible to use names instead of ID code in the high level SPICE routine calls. Spacecraft: ----------- MARS RECONNAISSANCE ORBITER -74 MRO -74 MRO_SPACECRAFT -74000 MRO_SPACECRAFT_BUS -74000 MRO_SC_BUS -74000 Science Instruments: -------------------- MRO_CRISM -74010 MRO_CRISM_OSU -74011 MRO_CRISM_VNIR -74012 MRO_CRISM_IR -74013 MRO_CTX -74021 MRO_HIRISE -74600 MRO_HIRISE_CCD1 -74601 MRO_HIRISE_CCD2 -74602 MRO_HIRISE_CCD3 -74603 MRO_HIRISE_CCD4 -74604 MRO_HIRISE_CCD5 -74605 MRO_HIRISE_CCD6 -74606 MRO_HIRISE_CCD7 -74607 MRO_HIRISE_CCD8 -74608 MRO_HIRISE_CCD9 -74609 MRO_HIRISE_CCD10 -74610 MRO_HIRISE_CCD11 -74611 MRO_HIRISE_CCD12 -74612 MRO_HIRISE_CCD13 -74613 MRO_HIRISE_CCD14 -74614 MRO_MARCI -74400 MRO_MARCI_VIS -74410 MRO_MARCI_VIS_BAND1 -74411 MRO_MARCI_VIS_BAND2 -74412 MRO_MARCI_VIS_BAND3 -74413 MRO_MARCI_VIS_BAND4 -74414 MRO_MARCI_VIS_BAND5 -74415 MRO_MARCI_UV -74420 MRO_MARCI_UV_BAND1 -74421 MRO_MARCI_UV_BAND2 -74422 MRO_MCS -74500 MRO_MCS_A -74510 MRO_MCS_A1 -74511 MRO_MCS_A2 -74512 MRO_MCS_A3 -74513 MRO_MCS_A4 -74514 MRO_MCS_A5 -74515 MRO_MCS_A6 -74516 MRO_MCS_B -74520 MRO_MCS_B1 -74521 MRO_MCS_B2 -74522 MRO_MCS_B3 -74523 MRO_ONC -74030 MRO_SHARAD -74070 Antennas: --------- MRO_HGA_BASEPLATE -74211 MRO_HGA_INNER_GIMBAL -74212 MRO_HGA_OUTER_GIMBAL -74213 MRO_HGA -74214 MRO_LGA1 -74220 MRO_LGA2 -74230 MRO_UHF -74240 Solar Arrays: ------------- MRO_SAPX_BASEPLATE -74311 MRO_SAPX_INNER_GIMBAL -74312 MRO_SAPX_OUTER_GIMBAL -74313 MRO_SAPX -74314 MRO_SAPX_C1 -74315 MRO_SAPX_C2 -74316 MRO_SAPX_C3 -74317 MRO_SAPX_C4 -74318 MRO_SAMX_BASEPLATE -74321 MRO_SAMX_INNER_GIMBAL -74322 MRO_SAMX_OUTER_GIMBAL -74323 MRO_SAMX -74324 MRO_SAMX_C1 -74325 MRO_SAMX_C2 -74326 MRO_SAMX_C3 -74327 MRO_SAMX_C4 -74328 The mappings summarized in this table are implemented by the keywords below. \begindata NAIF_BODY_NAME += ( 'MARS RECONNAISSANCE ORBITER' ) NAIF_BODY_CODE += ( -74 ) NAIF_BODY_NAME += ( 'MRO' ) NAIF_BODY_CODE += ( -74 ) NAIF_BODY_NAME += ( 'MRO_SPACECRAFT' ) NAIF_BODY_CODE += ( -74000 ) NAIF_BODY_NAME += ( 'MRO_SPACECRAFT_BUS' ) NAIF_BODY_CODE += ( -74000 ) NAIF_BODY_NAME += ( 'MRO_SC_BUS' ) NAIF_BODY_CODE += ( -74000 ) NAIF_BODY_NAME += ( 'MRO_CRISM' ) NAIF_BODY_CODE += ( -74010 ) NAIF_BODY_NAME += ( 'MRO_CRISM_OSU' ) NAIF_BODY_CODE += ( -74011 ) NAIF_BODY_NAME += ( 'MRO_CRISM_VNIR' ) NAIF_BODY_CODE += ( -74012 ) NAIF_BODY_NAME += ( 'MRO_CRISM_IR' ) NAIF_BODY_CODE += ( -74013 ) NAIF_BODY_NAME += ( 'MRO_CTX' ) NAIF_BODY_CODE += ( -74021 ) NAIF_BODY_NAME += ( 'MRO_HIRISE' ) NAIF_BODY_CODE += ( -74600 ) NAIF_BODY_NAME += ( 'MRO_HIRISE_CCD1' ) NAIF_BODY_CODE += ( -74601 ) NAIF_BODY_NAME += ( 'MRO_HIRISE_CCD2' ) NAIF_BODY_CODE += ( -74602 ) NAIF_BODY_NAME += ( 'MRO_HIRISE_CCD3' ) NAIF_BODY_CODE += ( -74603 ) NAIF_BODY_NAME += ( 'MRO_HIRISE_CCD4' ) NAIF_BODY_CODE += ( -74604 ) NAIF_BODY_NAME += ( 'MRO_HIRISE_CCD5' ) NAIF_BODY_CODE += ( -74605 ) NAIF_BODY_NAME += ( 'MRO_HIRISE_CCD6' ) NAIF_BODY_CODE += ( -74606 ) NAIF_BODY_NAME += ( 'MRO_HIRISE_CCD7' ) NAIF_BODY_CODE += ( -74607 ) NAIF_BODY_NAME += ( 'MRO_HIRISE_CCD8' ) NAIF_BODY_CODE += ( -74608 ) NAIF_BODY_NAME += ( 'MRO_HIRISE_CCD9' ) NAIF_BODY_CODE += ( -74609 ) NAIF_BODY_NAME += ( 'MRO_HIRISE_CCD10' ) NAIF_BODY_CODE += ( -74610 ) NAIF_BODY_NAME += ( 'MRO_HIRISE_CCD11' ) NAIF_BODY_CODE += ( -74611 ) NAIF_BODY_NAME += ( 'MRO_HIRISE_CCD12' ) NAIF_BODY_CODE += ( -74612 ) NAIF_BODY_NAME += ( 'MRO_HIRISE_CCD13' ) NAIF_BODY_CODE += ( -74613 ) NAIF_BODY_NAME += ( 'MRO_HIRISE_CCD14' ) NAIF_BODY_CODE += ( -74614 ) NAIF_BODY_NAME += ( 'MRO_MARCI' ) NAIF_BODY_CODE += ( -74400 ) NAIF_BODY_NAME += ( 'MRO_MARCI_VIS' ) NAIF_BODY_CODE += ( -74410 ) NAIF_BODY_NAME += ( 'MRO_MARCI_VIS_BAND1' ) NAIF_BODY_CODE += ( -74411 ) NAIF_BODY_NAME += ( 'MRO_MARCI_VIS_BAND2' ) NAIF_BODY_CODE += ( -74412 ) NAIF_BODY_NAME += ( 'MRO_MARCI_VIS_BAND3' ) NAIF_BODY_CODE += ( -74413 ) NAIF_BODY_NAME += ( 'MRO_MARCI_VIS_BAND4' ) NAIF_BODY_CODE += ( -74414 ) NAIF_BODY_NAME += ( 'MRO_MARCI_VIS_BAND5' ) NAIF_BODY_CODE += ( -74415 ) NAIF_BODY_NAME += ( 'MRO_MARCI_UV' ) NAIF_BODY_CODE += ( -74420 ) NAIF_BODY_NAME += ( 'MRO_MARCI_UV_BAND1' ) NAIF_BODY_CODE += ( -74421 ) NAIF_BODY_NAME += ( 'MRO_MARCI_UV_BAND2' ) NAIF_BODY_CODE += ( -74422 ) NAIF_BODY_NAME += ( 'MRO_MCS' ) NAIF_BODY_CODE += ( -74500 ) NAIF_BODY_NAME += ( 'MRO_MCS_A' ) NAIF_BODY_CODE += ( -74510 ) NAIF_BODY_NAME += ( 'MRO_MCS_A1' ) NAIF_BODY_CODE += ( -74511 ) NAIF_BODY_NAME += ( 'MRO_MCS_A2' ) NAIF_BODY_CODE += ( -74512 ) NAIF_BODY_NAME += ( 'MRO_MCS_A3' ) NAIF_BODY_CODE += ( -74513 ) NAIF_BODY_NAME += ( 'MRO_MCS_A4' ) NAIF_BODY_CODE += ( -74514 ) NAIF_BODY_NAME += ( 'MRO_MCS_A5' ) NAIF_BODY_CODE += ( -74515 ) NAIF_BODY_NAME += ( 'MRO_MCS_A6' ) NAIF_BODY_CODE += ( -74516 ) NAIF_BODY_NAME += ( 'MRO_MCS_B' ) NAIF_BODY_CODE += ( -74520 ) NAIF_BODY_NAME += ( 'MRO_MCS_B1' ) NAIF_BODY_CODE += ( -74521 ) NAIF_BODY_NAME += ( 'MRO_MCS_B2' ) NAIF_BODY_CODE += ( -74522 ) NAIF_BODY_NAME += ( 'MRO_MCS_B3' ) NAIF_BODY_CODE += ( -74523 ) NAIF_BODY_NAME += ( 'MRO_ONC' ) NAIF_BODY_CODE += ( -74030 ) NAIF_BODY_NAME += ( 'MRO_SHARAD' ) NAIF_BODY_CODE += ( -74070 ) NAIF_BODY_NAME += ( 'MRO_HGA_BASEPLATE' ) NAIF_BODY_CODE += ( -74211 ) NAIF_BODY_NAME += ( 'MRO_HGA_INNER_GIMBAL' ) NAIF_BODY_CODE += ( -74212 ) NAIF_BODY_NAME += ( 'MRO_HGA_OUTER_GIMBAL' ) NAIF_BODY_CODE += ( -74213 ) NAIF_BODY_NAME += ( 'MRO_HGA' ) NAIF_BODY_CODE += ( -74214 ) NAIF_BODY_NAME += ( 'MRO_LGA1' ) NAIF_BODY_CODE += ( -74220 ) NAIF_BODY_NAME += ( 'MRO_LGA2' ) NAIF_BODY_CODE += ( -74230 ) NAIF_BODY_NAME += ( 'MRO_UHF' ) NAIF_BODY_CODE += ( -74240 ) NAIF_BODY_NAME += ( 'MRO_SAPX_BASEPLATE' ) NAIF_BODY_CODE += ( -74311 ) NAIF_BODY_NAME += ( 'MRO_SAPX_INNER_GIMBAL' ) NAIF_BODY_CODE += ( -74312 ) NAIF_BODY_NAME += ( 'MRO_SAPX_OUTER_GIMBAL' ) NAIF_BODY_CODE += ( -74313 ) NAIF_BODY_NAME += ( 'MRO_SAPX' ) NAIF_BODY_CODE += ( -74314 ) NAIF_BODY_NAME += ( 'MRO_SAPX_C1' ) NAIF_BODY_CODE += ( -74315 ) NAIF_BODY_NAME += ( 'MRO_SAPX_C2' ) NAIF_BODY_CODE += ( -74316 ) NAIF_BODY_NAME += ( 'MRO_SAPX_C3' ) NAIF_BODY_CODE += ( -74317 ) NAIF_BODY_NAME += ( 'MRO_SAPX_C4' ) NAIF_BODY_CODE += ( -74318 ) NAIF_BODY_NAME += ( 'MRO_SAMX_BASEPLATE' ) NAIF_BODY_CODE += ( -74321 ) NAIF_BODY_NAME += ( 'MRO_SAMX_INNER_GIMBAL' ) NAIF_BODY_CODE += ( -74322 ) NAIF_BODY_NAME += ( 'MRO_SAMX_OUTER_GIMBAL' ) NAIF_BODY_CODE += ( -74323 ) NAIF_BODY_NAME += ( 'MRO_SAMX' ) NAIF_BODY_CODE += ( -74324 ) NAIF_BODY_NAME += ( 'MRO_SAMX_C1' ) NAIF_BODY_CODE += ( -74325 ) NAIF_BODY_NAME += ( 'MRO_SAMX_C2' ) NAIF_BODY_CODE += ( -74326 ) NAIF_BODY_NAME += ( 'MRO_SAMX_C3' ) NAIF_BODY_CODE += ( -74327 ) NAIF_BODY_NAME += ( 'MRO_SAMX_C4' ) NAIF_BODY_CODE += ( -74328 ) \begintext