KPL/FK MER-2 Frames Kernel -- FLIGHT PARAMETERS ======================================================================== This frame kernel contains complete set of frame definitions for the MER-2 including definitions for the MER-2 cruise, lander, and rover frames, local level, topocentric and surface-fixed frames, IDD, PMA and mobility structure frames, and science instrument frames. Version and Date ======================================================================== Version 0.6 -- February 4, 2004 -- Boris Semenov, NAIF Re-classified IDD_TURRET_HEAD frame as CK-based frame to allow storing its deflected orientation directly w.r.t. to the ROVER frame. Version 0.5 -- January 23, 2004 -- Boris Semenov, NAIF Updated the "TOPO" frame orientation based on the official landing site location determined by MER NAV Team and delivered in Rover Position File (RPF) "rpf_a_040108_0815_dte+ody.txt". Version 0.4 -- December 10, 2003 -- Boris Semenov, NAIF Added HGA_ZERO_EL frame to allow storing HGA gimbal rotations in separate CK segments. Version 0.3 -- December 4, 2003 -- Boris Semenov, NAIF Replaced PANCAM_LEFT and PANCAM_RIGHT frames each with eight individual frames, one for every filter. Replaced MICROIMAGER frame with two frames, one for closed and one for open cover (called MICROIMAGER_F1 and MICROIMAGER_F2) Re-defined PMA_BASE frame to be CK-based (to allow separate CK segments for PMA AZ and EL rotations.) Added PMA_ZERO_AZ and PMA_ZERO_EL frames to allow incorporating the gimbal angle corrections into the PMA frame chain. Version 0.2 -- September 29, 2003 -- Boris Semenov, NAIF Migrated the "TOPO" frame definition from a separate file -- mer2_tp_ep55a3_iau2000_v1.tf -- to this file as the final landing site selection has been made. Modified NAVCAM, PANCAM and HAZCAM frame definitions to match preliminary calibration data (CAHVOR(E) models.) Note that the calibration update is expected in Aug-Sep '03. Declared IDD_BASE frame obsolete as IDD engineers ended up not using it for anything; modified tables and diagrams to reflect that. Corrected IDD diagrams to reflect actual relative location of the joints. Replaced nominal IDD instrument offset values with the actual values from calibration report. Changed the following HAZCAM frame and structure name to be consistent with MIPS terminology: HAZCAM_FRONT_LEFT --> FRONT_HAZCAM_LEFT HAZCAM_FRONT_RIGHT --> FRONT_HAZCAM_RIGHT HAZCAM_REAR_LEFT --> REAR_HAZCAM_LEFT HAZCAM_REAR_RIGHT --> REAR_HAZCAM_RIGHT Changed MINI_TES to MINITES for the same reason. Corrected diagrams to place shown ROVER frame origin closer to the to the actual Rover Navigation Frame origin location, to put MINITES off-center w.r.t. to the PMA AZ axis, and to put PMA head frame center closer to the left side of the PMA assembly. Change rotation order and angle values of the Euler angles specifying orientation of the cameras w.r.t. to their reference frames. Now to rotate from reference to camera it is first about Y, second about X, third about Z. Updated comments to reflect this. Added name-ID mappings for individual SITEs (SITE_##/-2549##.) Version 0.1 -- March 28, 2003 -- Boris Semenov, NAIF Fixed NAVCAM/PANCAM LEFT/RIGHT ID codes in the frame definitions and body ID-name mapping keywords. NAVCAM LEFT/RIGHT IDs are now -254111/-254112; PANCAM LEFT/RIGHT IDs are -254121/-254122. Fixed NAVCAM/PANCAM LEFT/RIGHT frame ASCII diagrams to show the right hand frames. Fixed PANCAM LEFT/RIGHT frame definitions to make nominal toe-in rotations in the right direction. Version 0.0 -- February 13, 2003 -- Boris Semenov, NAIF MER-A was replaced with MER-2 to match projects official name<->id mapping. Version 0.0 -- October 18, 2002 -- Boris Semenov, NAIF Initial Release. Complete frame layout, but some descriptions and diagram are not implemented. References ======================================================================== 1. ``Frames Required Reading'' 2. ``Kernel Pool Required Reading'' 3. ``C-Kernel Required Reading'' 4. ``MER Pointing, Positioning, Phasing and Coordinate Systems'', MER420-2-431, Latest Version 5. MAS, IDD, HGA, and PMA MICD documents, MER420-3-480, Latest Version 6. FM IDD Test Report Summary, Eric T. Baumgartner, March 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 and CSPICE function furnsh_c load a kernel file into the kernel 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. MER-2 NAIF ID Codes ======================================================================== The following names and NAIF ID codes are assigned to the MER-2 rover, its structures and science instruments (the keywords implementing these definitions are located in the section "MER-2 Mission NAIF ID Codes -- Definition Section" at the end of this file): MER-2 rover, landing site, and sites: ------------------------------------- MER-2 -254 MER-2_LANDING_SITE -254900 MER-2_SITE_## -2549##, where ## is 1 to 99 MER-2 HAZCAMs: -------------- MER-2_FRONT_HAZCAM_LEFT -254011 MER-2_FRONT_HAZCAM_RIGHT -254012 MER-2_REAR_HAZCAM_LEFT -254021 MER-2_REAR_HAZCAM_RIGHT -254022 MER-2 PMA structures and PMA-mounted instruments: -------------------------------------------------- MER-2_PMA_BASE -254100 MER-2_PMA_HEAD -254110 MER-2_NAVCAM_LEFT -254111 MER-2_NAVCAM_RIGHT -254112 MER-2_PANCAM_LEFT_F1 -254121 MER-2_PANCAM_LEFT_F2 -254122 MER-2_PANCAM_LEFT_F3 -254123 MER-2_PANCAM_LEFT_F4 -254124 MER-2_PANCAM_LEFT_F5 -254125 MER-2_PANCAM_LEFT_F6 -254126 MER-2_PANCAM_LEFT_F7 -254127 MER-2_PANCAM_LEFT_F8 -254128 MER-2_PANCAM_RIGHT_F1 -254131 MER-2_PANCAM_RIGHT_F2 -254132 MER-2_PANCAM_RIGHT_F3 -254133 MER-2_PANCAM_RIGHT_F4 -254134 MER-2_PANCAM_RIGHT_F5 -254135 MER-2_PANCAM_RIGHT_F6 -254136 MER-2_PANCAM_RIGHT_F7 -254137 MER-2_PANCAM_RIGHT_F8 -254138 MER-2_MINITES -254140 MER-2 IDD structures and IDD-mounted instruments: -------------------------------------------------- MER-2_IDD_BASE -254200 MER-2_IDD_SHOULDER_AZ -254201 MER-2_IDD_SHOULDER_EL -254202 MER-2_IDD_ELBOW -254203 MER-2_IDD_WRIST -254204 MER-2_IDD_TURRET -254205 MER-2_IDD_TURRET_HEAD -254206 MER-2_APXS -254210 MER-2_MICROIMAGER -254220 MER-2_MICROIMAGER_F1 -254221 MER-2_MICROIMAGER_F2 -254222 MER-2_RAT -254230 MER-2_MOSSBAUER -254240 MER-2 Antennas: --------------- MER-2_MGA -254500 MER-2_CLGA -254510 MER-2_BLGA -254520 MER-2_UHF -254030 MER-2_HGA_BASE -254300 MER-2_HGA -254310 MER-2_RLGA -254540 MER-2 mobility system components: --------------------------------- MER-2_ROCKER_LEFT -254410 MER-2_BOGEY_LEFT -254411 MER-2_STRUT_FRONT_LEFT -254412 MER-2_STRUT_REAR_LEFT -254413 MER-2_ROCKER_RIGHT -254420 MER-2_BOGEY_RIGHT -254421 MER-2_STRUT_FRONT_RIGHT -254422 MER-2_STRUT_REAR_RIGHT -254423 MER-2 Frames ======================================================================== The following MER-2 frames are defined in this kernel file: Name Relative to Type NAIF ID ====================== =================== ===== ======= MER-2 Surface frames: --------------------- MER-2_TOPO IAU_MARS FIXED -254900 MER-2_LOCAL_LEVEL MER-2_TOPO FIXED -254910 MER-2_SURFACE_FIXED MER-2_LOCAL_LEVEL FIXED -254920 MER-2 rover, lander, and cruise frames: --------------------------------------- MER-2_ROVER MER-2_LOCAL_LEVEL CK -254000 MER-2_LANDER MER-2_LOCAL_LEVEL FIXED -254700 MER-2_CRUISE J2000 CK -254800 MER-2 rover body-mounted instrument frames: ------------------------------------------- MER-2_FRONT_HAZCAM_LEFT MER-2_ROVER FIXED -254011 MER-2_FRONT_HAZCAM_RIGHT MER-2_ROVER FIXED -254012 MER-2_REAR_HAZCAM_LEFT MER-2_ROVER FIXED -254021 MER-2_REAR_HAZCAM_RIGHT MER-2_ROVER FIXED -254022 MER-2_UHF MER-2_ROVER FIXED -254030 MER-2 PMA and PMA-mounted instrument frames: -------------------------------------------- MER-2_PMA_ZERO_AZ MER-2_ROVER CK -254101 MER-2_PMA_BASE MER-2_PMA_ZERO_AZ CK -254100 MER-2_PMA_ZERO_EL MER-2_BASE CK -254102 MER-2_PMA_HEAD MER-2_PMA_ZERO_EL CK -254110 MER-2_NAVCAM_LEFT MER-2_PMA_HEAD FIXED -254111 MER-2_NAVCAM_RIGHT MER-2_PMA_HEAD FIXED -254112 MER-2_PANCAM_LEFT_F1 MER-2_PMA_HEAD FIXED -254121 MER-2_PANCAM_LEFT_F2 MER-2_PMA_HEAD FIXED -254122 MER-2_PANCAM_LEFT_F3 MER-2_PMA_HEAD FIXED -254123 MER-2_PANCAM_LEFT_F4 MER-2_PMA_HEAD FIXED -254124 MER-2_PANCAM_LEFT_F5 MER-2_PMA_HEAD FIXED -254125 MER-2_PANCAM_LEFT_F6 MER-2_PMA_HEAD FIXED -254126 MER-2_PANCAM_LEFT_F7 MER-2_PMA_HEAD FIXED -254127 MER-2_PANCAM_LEFT_F8 MER-2_PMA_HEAD FIXED -254128 MER-2_PANCAM_RIGHT_F1 MER-2_PMA_HEAD FIXED -254131 MER-2_PANCAM_RIGHT_F2 MER-2_PMA_HEAD FIXED -254132 MER-2_PANCAM_RIGHT_F3 MER-2_PMA_HEAD FIXED -254133 MER-2_PANCAM_RIGHT_F4 MER-2_PMA_HEAD FIXED -254134 MER-2_PANCAM_RIGHT_F5 MER-2_PMA_HEAD FIXED -254135 MER-2_PANCAM_RIGHT_F6 MER-2_PMA_HEAD FIXED -254136 MER-2_PANCAM_RIGHT_F7 MER-2_PMA_HEAD FIXED -254137 MER-2_PANCAM_RIGHT_F8 MER-2_PMA_HEAD FIXED -254138 MER-2_MINITES MER-2_PMA_HEAD FIXED -254140 MER-2 IDD and IDD-mounted instrument frames: -------------------------------------------- MER-2_IDD_BASE MER-2_ROVER FIXED -254200 MER-2_IDD_SHOULDER_AZ MER-2_ROVER CK -254201 MER-2_IDD_SHOULDER_EL MER-2_IDD_SHOULDER_AZ CK -254202 MER-2_IDD_ELBOW MER-2_IDD_SHOULDER_EL CK -254203 MER-2_IDD_WRIST MER-2_IDD_ELBOW CK -254204 MER-2_IDD_TURRET MER-2_IDD_WRIST CK -254205 MER-2_IDD_TURRET_HEAD MER-2_IDD_TURRET CK -254206 MER-2_APXS MER-2_IDD_TURRET_HEAD FIXED -254210 MER-2_MICROIMAGER_F1 MER-2_IDD_TURRET_HEAD FIXED -254221 MER-2_MICROIMAGER_F2 MER-2_IDD_TURRET_HEAD FIXED -254222 MER-2_RAT MER-2_IDD_TURRET_HEAD FIXED -254230 MER-2_MOSSBAUER MER-2_IDD_TURRET_HEAD FIXED -254240 MER-2 antenna frames: ---------------------- MER-2_MGA MER-2_ROVER FIXED -254500 MER-2_CLGA MER-2_ROVER FIXED -254510 MER-2_BLGA MER-2_ROVER FIXED -254520 MER-2_UHF MER-2_ROVER FIXED -254030 MER-2_HGA_BASE MER-2_ROVER FIXED -254300 MER-2_HGA_ZERO_EL MER-2_HGA_BASE CK -254301 MER-2_HGA MER-2_HGA_ZERO_EL CK -254310 MER-2_RLGA MER-2_ROVER FIXED -254540 MER-2 mobility system frames: ----------------------------- MER-2_ROCKER_LEFT MER-2_ROVER CK -254410 MER-2_BOGEY_LEFT MER-2_ROCKER_LEFT CK -254411 MER-2_STRUT_FRONT_LEFT MER-2_ROCKER_LEFT CK -254412 MER-2_STRUT_REAR_LEFT MER-2_BOGEY_LEFT CK -254413 MER-2_ROCKER_RIGHT MER-2_ROVER CK -254420 MER-2_BOGEY_RIGHT MER-2_ROCKER_RIGHT CK -254421 MER-2_STRUT_FRONT_RIGHT MER-2_ROCKER_RIGHT CK -254422 MER-2_STRUT_REAR_RIGHT MER-2_BOGEY_RIGHT CK -254423 MER-2 Frame Tree ======================================================================== The diagram below shows the MER-2 frame hierarchy: "J2000" +-------------------------------------------------------+ | | | |<-ck |<-pck |<-pck | | | v v v MER-2_CRUISE "IAU_MARS" "IAU_EARTH" ----------------- ---------- ----------- ^ . | . . |<-fixed . . | . . v . . "MER-2_TOPO" . . ------------ . . | . . |<-fixed . . | . . v . . "MER-2_LOCAL_LEVEL" . . ------------------------------------+ . . | | | . . |<-ck |<-fixed |<-fixed . . | | | . . | v v . . | "MER-2_SURFACE_FIXED" "MER-2_LANDER" . . | --------------------- -------------- . . (3) | ^ . . . . .. . . .. | . . . . . | . . . . . | . . v . . | . . "MER-2_CLGA". . | "MER-2_RLGA" . . ------------. . | ------------ . . ^ . . | ^ . . | . . | | . . |<-fxd . . | |<-fxd . . | . . | | . . | v . | | . . | "MER-2_BLGA". | "MER-2_HAZCAM_*" | . . | ------------. | ---------------- | . . | ^ . | ^ | . . | | . | | | . . | |<-fxd . | |<-fxd | . . | | . | | | . . | | v | | | . . | | "MER-2_MGA" | "MER-2_UHF" | | . . | | ----------- | ----------- | | . . | | ^ | ^ | | . . | | | | | | | . .(1) | | fxd->| | |<-fxd | | .(2) . | | | | | | | . v | | | v | | | v +-------------------------------------------------------+ "MER-2_ROVER" +-------------------------------------------------------+ | | | | | |<-fixed |<-fixed | | | | | | v v | | "MER-2_PMA_ZERO_AZ" "MER-2_HGA_BASE" | | ------------------- ---------------- | | | | | | |<-ck |<-ck | | | | | | V v | | "MER-2_PMA_BASE" "MER-2_HGA_ZERO_EL" | | ---------------- ------------------- | | | | | | |<-fixed |<-ck | | | | | | V V | | "MER-2_PMA_ZERO_EL" "MER-2_HGA" | | ------------------- ----------- | | | | | |<-ck | | | | | v | | "MER-2_PMA_HEAD" | | +-----------------------------------------+ | | | | | | | |<-fixed |<-fixed fixed->| | | | | | | | v v v | | "MER-2_PANCAM_*" "MER-2_NAVCAM_*" "MER-2_MINITES" | | ---------------- ---------------- --------------- | | | | | | | |------------------------------+ | | (obsolete) | | |<-ck |<-fixed | | | | v V | "MER-2_IDD_SHOULDER_AZ" "MER-2_IDD_BASE" | ----------------------- ---------------- | | | |<-ck |<-ck | | v v "MER-2_IDD_SHOULDER_EL" "MER-2_ROCKER_*" ----------------------- +----------------------------------- | | | |<-ck |<-ck |<-ck | | | v v v "MER-2_IDD_ELBOW" "MER-2_STRUT_FRONT_*" "MER-2_BOGEY_*" ----------------- --------------------- --------------- | | |<-ck |<-ck | | v v "MER-2_IDD_WRIST" "MER-2_STRUT_REAR_*" ----------------- -------------------- | |<-ck | v "MER-2_IDD_TURRET" ------------------ | |<-ck | v "MER-2_IDD_TURRET_HEAD" ------------------------------------------------------------+ | | | | |<-fixed |<-fixed |<-fixed |<-fixed | | | | v v v v "MER-2_APXS" "MER-2_MICROIMAGER_F*" "MER-2_MOSSBAUER" "MER-2_RAT" ------------ ---------------------- ----------------- ----------- (1) While MER-2_CRUISE and MER-2_ROVER frames have constant orientation with respect to each other during cruise, the frame tree implemented by this FK does not provide this orientation "connection". (2) While MER-2_LANDER and MER-2_ROVER frames have constant orientation with respect to each other during cruise and up until the rover rolls off the lander, the frame tree implemented by this FK does not provide this orientation "connection". (3) Although MGA, CLGA and BLGA are mounted on the cruise stage, for CK production convenience reasons they are specified as fixed offset frames with respect to the rover frame. MER-2 Surface Frames ======================================================================== The surface frames layout in this version of the FK is based on the assumption that the total traverse distance during the mission will be relatively short (hundreds of meters, not kilometers) and, therefore, the local north and nadir directions, defining surface frame orientations, will be approximately the same at any point along the traverse path. This assumption allows defining surface frames as fixed offset frames with respect to each other and/or to Mars body-fixed frame, IAU_MARS. This diagram illustrates MER-2 surface frames: <> MER-2 Topocentric Frame ----------------------- MER-2 topocentric frame, MER-2_TOPO, is defined as follows: -- +Z axis is along the outward normal at the landing site ("zenith"); -- +X axis is along the local north direction ("north"); -- +Y axis completes the right hand frame ("west"); -- the origin of this frame is located at the landing site. Orientation of the frame is given relative to the body fixed rotating frame 'IAU_MARS' (x - along the line of zero longitude intersecting the equator, z - along the spin axis, y - completing the right hand coordinate frame.) The transformation from 'MER-2_TOPO' frame to 'IAU_MARS' frame is a 3-2-3 rotation with defined angles as the negative of the site longitude, the negative of the site colatitude, 180 degrees. The nominal EP55A3 (Gusev Crater) landing site Gaussian longitude and latitude are: Lon = 175.300000 degrees East Lat = -14.755890 degrees North These Gaussian coordinates correspond to the following areocentric coordinates (R, LON, LAT) = (3392.33, 175.300, -14.59) and Mars radii (Re, Re, Rp) = (3396.19, 3396.19, 3376.20). The actual landing site Gaussian longitude and latitude, derived from the landing site location determined by MER NAV team and provided in the RPF file "rpf_a_040108_0815_dte+ody.txt", are: Lon = 175.478480 degrees East Lat = -14.737596 degrees North These Gaussian coordinates correspond to the following areocentric coordinates (R, LON, LAT) = (3392.2997, 175.47848, -14.571892) and Mars radii (Re, Re, Rp) = (3396.19, 3396.19, 3376.20). The coordinates specified above are given with respect to the 'IAU_MARS' instance defined by the rotation/shape model from the the PCK file 'mars_iau2000_v0.tpc'. These keywords implement the frame definition. \begindata FRAME_MER-2_TOPO = -254900 FRAME_-254900_NAME = 'MER-2_TOPO' FRAME_-254900_CLASS = 4 FRAME_-254900_CLASS_ID = -254900 FRAME_-254900_CENTER = -254900 TKFRAME_-254900_RELATIVE = 'IAU_MARS' TKFRAME_-254900_SPEC = 'ANGLES' TKFRAME_-254900_UNITS = 'DEGREES' TKFRAME_-254900_AXES = ( 3, 2, 3 ) TKFRAME_-254900_ANGLES = ( -175.47848, -104.737596, 180.000 ) \begintext MER-2 Local Level Frame ----------------------- MER-2 local level frame, MER-2_LOCAL_LEVEL, is defined as follows: -- +Z axis is along the downward normal at the landing site ("nadir"); -- +X axis is along the local north direction ("north"); -- +Y axis completes the right hand frame ("east"); -- the origin of this frame is located between the rover's middle wheels and moves with the rover. Since this frame is essentially the MER-2_TOPO frame flipped by 180 degrees about +X ("north") to point +Z down, this frame is defined as a fixed offset frame with respect to the MER-2_TOPO frame. \begindata FRAME_MER-2_LOCAL_LEVEL = -254910 FRAME_-254910_NAME = 'MER-2_LOCAL_LEVEL' FRAME_-254910_CLASS = 4 FRAME_-254910_CLASS_ID = -254910 FRAME_-254910_CENTER = -254900 TKFRAME_-254910_RELATIVE = 'MER-2_TOPO' TKFRAME_-254910_SPEC = 'ANGLES' TKFRAME_-254910_UNITS = 'DEGREES' TKFRAME_-254910_AXES = ( 1, 2, 3 ) TKFRAME_-254910_ANGLES = ( 180.000, 0.000, 0.000 ) \begintext MER-2 Surface Fixed Frame ------------------------- MER-2 surface fixed frame, MER-2_SURFACE_FIXED, frame is defined as follows: -- +Z axis is along the downward normal at the landing site ("nadir"); -- +X axis is along the local north direction ("north"); -- +Y axis completes the right hand frame ("east"); -- the origin of this frame is located at the landing site. As seen from the definition, orientation-wise this frame is coincident with MER-2_LOCAL_LEVEL frame but its origin does not move during the mission. Therefore, this frame is defined as zero-offset frame with respect to the MER-2_LOCAL_LEVEL frame. \begindata FRAME_MER-2_SURFACE_FIXED = -254920 FRAME_-254920_NAME = 'MER-2_SURFACE_FIXED' FRAME_-254920_CLASS = 4 FRAME_-254920_CLASS_ID = -254920 FRAME_-254920_CENTER = -254900 TKFRAME_-254920_RELATIVE = 'MER-2_LOCAL_LEVEL' TKFRAME_-254920_SPEC = 'ANGLES' TKFRAME_-254920_UNITS = 'DEGREES' TKFRAME_-254920_AXES = ( 1, 2, 3 ) TKFRAME_-254920_ANGLES = ( 0.000, 0.000, 0.000 ) \begintext MER-2 Rover, Lander, and Cruise Frames ======================================================================== This diagram illustrates MER-2 cruise, rover, and lander frames: Yc Xc .__________ <------o _________________. | | | Cruise ._________________ | _________________. Stage | V Zc UHF /\ HGA \/ PMA .--. # || / \ # || | | # || \ /=. # || `--' || # || Rover ======================= (deployed) | =o=. | | .' Yr `.__|o====o .===o=== o------> Xr \\ .-. .|. `.-. ##o### | o | | | | | o | `-' `|' `-' IDD V Zr Yl .________________ <------o _______________. Lander |_______________________ |Xl _____________| (deployed) | | V Zl MER-2 Rover Frame ----------------- MER-2 rover frame, MER-2_ROVER, is defined as follows: -- +Z axis is normal to the rover top deck plane and points down, from the top deck toward the wheels; -- +X axis is parallel to the rover top deck plane and points from the center of the top deck toward the PMA assembly; -- +Y completes the right hand frame; Orientation-wise this frame is the same as the Rover Mechanical and Rover Navigation frames defined in [4]. Since SPICE frames subsystem does not incorporate location information -- it is stored in the fixed offset SPK files -- this FK does not attempt to "map" the origin of the MER-2_ROVER to either Rover Navigation origin (located right above the middle wheels and shown on the diagram above and all other diagrams in this file) or Rover Mechanical frame origin (shifted by about 29 cm toward the front wheels). This "mapping" is done by defining a separate location for each of the two origins in the MER-2 fixed offset SPK file. During cruise this frame is rotated from the lander and cruise frames by +90 degrees about +Z axis. This orientation can also be provided in a CK file, but this frame seem to have no practical applications in cruise. During normal surface operations the MER-2_ROVER frame orientation with respect to the surface changes as the rover moves. Therefore, this frame is defined as a CK frame and the frame's orientation with respect to the MER-2_LOCAL_LEVEL frame is provided in the CK files. \begindata FRAME_MER-2_ROVER = -254000 FRAME_-254000_NAME = 'MER-2_ROVER' FRAME_-254000_CLASS = 3 FRAME_-254000_CLASS_ID = -254000 FRAME_-254000_CENTER = -254 CK_-254000_SCLK = -254 CK_-254000_SPK = -254000 \begintext MER-2 Lander Frame ------------------ MER-2 lander frame, MER-2_LANDER, is defined as follows: -- +Z axis is normal to the lander base petal plane and points down, from the upright lander toward the ground; -- +Y axis is parallel to the lander base petal plane and directed outward passing through the geometric center of the rover petal; -- +X completes the right hand frame; -- the origin of this frame is located at the geometric center of the the lander base petal; During cruise this frame is coincident orientation-wise with the cruise frame and is rotated by -90 degrees about +Z axis off the rover frame. Note that this frame has no practical applications in cruise. During normal surface operations the MER-2_LANDER frame orientation with respect to the surface is fixed after landing (Even if it changes after the rover rolls off, there is no practical sense in capturing the change magnitude as the lander does not have any instruments of its own.) Therefore, this frame is defined as a fixed offset frame with respect to the MER-2_LOCAL_LEVEL frame. Currently the keywords below define the lander frame's orientation to be coincident with the local level frame -- +Z = nadir, +X = north, +Y = east. \begindata FRAME_MER-2_LANDER = -254700 FRAME_-254700_NAME = 'MER-2_LANDER' FRAME_-254700_CLASS = 4 FRAME_-254700_CLASS_ID = -254700 FRAME_-254700_CENTER = -254 TKFRAME_-254700_RELATIVE = 'MER-2_LOCAL_LEVEL' TKFRAME_-254700_SPEC = 'ANGLES' TKFRAME_-254700_UNITS = 'DEGREES' TKFRAME_-254700_AXES = ( 1, 2, 3 ) TKFRAME_-254700_ANGLES = ( 0.000, 0.000, 0.000 ) \begintext MER-2 Cruise Frame ------------------ MER-2 cruise frame, MER-2_CRUISE, is defined as follows: -- +Z axis is parallel to s/c spin axis and points toward the end of the aeroshell (in the launch direction); -- +Y axis is parallel to the spacecraft/launch vehicle interface plane and point toward star scanner assembly; -- +X completes the right hand frame; -- the origin of this frame is at the geometric center of the spacecraft/ launch vehicle interface ring. During cruise the MER-2_CRUISE frame orientation in inertial space changes as the spacecraft approaches Mars. Therefore, this frame is defined as a CK frame and the frame's orientation with respect to the J2000 inertial frame is provided in the CK files. During cruise this frame is coincident orientation-wise with the lander frame and is rotated by -90 degrees about +Z axis off the rover frame. This frame has no practical application during surface operations. \begindata FRAME_MER-2_CRUISE = -254800 FRAME_-254800_NAME = 'MER-2_CRUISE' FRAME_-254800_CLASS = 3 FRAME_-254800_CLASS_ID = -254800 FRAME_-254800_CENTER = -254 CK_-254800_SCLK = -254 CK_-254800_SPK = -254800 \begintext MER-2 Rover HAZCAM Frames ======================================================================== MER-2 HAZCAM Frames ------------------- The frame for each of the four MER-2 HAZCAMs -- FRONT/LEFT, FRONT/RIGHT, REAR/LEFT, REAR/RIGHT -- is defined as follows: -- +Z axis is along the camera's central pixel view direction ("into image"); -- +Y axis is along the image central column and points from the image center toward the image top row ("up"); -- +X completes the right hand frame and is along the image central row and points from the image center toward the image left column ("left"); -- the origin of the frame is located at the camera focal point. This diagram illustrates rover HAZCAM frames: /\ PMA HGA \/ .--. UHF || \ \ # || Yhr ^ \ | # || ^Yhf \ \ /=. # || / \ ' || # || / ====\================/= (out of page) Xhr o| =o=. |x Xhf (into page) .' | .' Yr `.__| `. .' .===o=== o------>Xr`. v .-. .|. `.-. v Zhf Zhr | o | | | | | o | `-' `|' `-' V Zr (IDD is not shown) Since all HAZCAMs are rigidly mounted on the rover body, their frames are defined as fixed offset frames with orientation given with respect to the rover frame. Actual HAZCAM frame orientations will be derived from the final CAHVOR models as soon as such become available. Until then the frame orientations provided below are set to their nominal design values -- boresight in the direction of the rover +X and tilted 45 degrees toward the ground for FRONT HAZCAMs and in the direction of -X and tilted 35 degrees toward the ground for REAR HAZCAMs. The following sets of keywords should be included into the frame definitions to provide this nominal orientation (provided for reference only): TKFRAME_-254011_AXES = ( 2, 1, 3 ) TKFRAME_-254011_ANGLES = ( -45.000, 0.000, 90.000 ) TKFRAME_-254012_AXES = ( 2, 1, 3 ) TKFRAME_-254012_ANGLES = ( -45.000, 0.000, 90.000 ) TKFRAME_-254021_AXES = ( 2, 1, 3 ) TKFRAME_-254021_ANGLES = ( 55.000, 0.000, -90.000 ) TKFRAME_-254022_AXES = ( 2, 1, 3 ) TKFRAME_-254022_ANGLES = ( 55.000, 0.000, -90.000 ) The actual MER-2_FRONT_HAZCAM_LEFT frame orientation provided in the frame definition below was computed using the CAHVOR(E) camera model file, 'MER_CAL_58_SN_107.cahvore'. According to this model the reference frame, MER-2_ROVER, can be transformed into the camera frame, MER-2_FRONT_HAZCAM_LEFT, by the following sequence of rotations: first by 45.44309254 degrees about Y, then by -1.66238388 degrees about X, and finally by -89.94006832 degrees about Z. The frame definition below contains the opposite of this transformation because Euler angles specified in it define rotations from the "destination" frame to the "reference" frame. \begindata FRAME_MER-2_FRONT_HAZCAM_LEFT = -254011 FRAME_-254011_NAME = 'MER-2_FRONT_HAZCAM_LEFT' FRAME_-254011_CLASS = 4 FRAME_-254011_CLASS_ID = -254011 FRAME_-254011_CENTER = -254 TKFRAME_-254011_RELATIVE = 'MER-2_ROVER' TKFRAME_-254011_SPEC = 'ANGLES' TKFRAME_-254011_UNITS = 'DEGREES' TKFRAME_-254011_AXES = ( 2, 1, 3 ) TKFRAME_-254011_ANGLES = ( -45.443, 1.662, 89.940 ) \begintext The actual MER-2_FRONT_HAZCAM_RIGHT frame orientation provided in the frame definition below was computed using the CAHVOR(E) camera model file, 'MER_CAL_59_SN_109.cahvore'. According to this model the reference frame, MER-2_ROVER, can be transformed into the camera frame, MER-2_FRONT_HAZCAM_RIGHT, by the following sequence of rotations: first by 45.48515497 degrees about Y, then by -1.62071167 degrees about X, and finally by -88.71244843 degrees about Z. The frame definition below contains the opposite of this transformation because Euler angles specified in it define rotations from the "destination" frame to the "reference" frame. \begindata FRAME_MER-2_FRONT_HAZCAM_RIGHT = -254012 FRAME_-254012_NAME = 'MER-2_FRONT_HAZCAM_RIGHT' FRAME_-254012_CLASS = 4 FRAME_-254012_CLASS_ID = -254012 FRAME_-254012_CENTER = -254 TKFRAME_-254012_RELATIVE = 'MER-2_ROVER' TKFRAME_-254012_SPEC = 'ANGLES' TKFRAME_-254012_UNITS = 'DEGREES' TKFRAME_-254012_AXES = ( 2, 1, 3 ) TKFRAME_-254012_ANGLES = ( -45.485, 1.621, 88.712 ) \begintext The actual MER-2_REAR_HAZCAM_LEFT frame orientation provided in the frame definition below was computed using the CAHVOR(E) camera model file, 'MER_CAL_60_SN_106.cahvore'. According to this model the reference frame, MER-2_ROVER, can be transformed into the camera frame, MER-2_REAR_HAZCAM_LEFT, by the following sequence of rotations: first by -56.52021778 degrees about Y, then by 0.98565075 degrees about X, and finally by 89.66122228 degrees about Z. The frame definition below contains the opposite of this transformation because Euler angles specified in it define rotations from the "destination" frame to the "reference" frame. \begindata FRAME_MER-2_REAR_HAZCAM_LEFT = -254021 FRAME_-254021_NAME = 'MER-2_REAR_HAZCAM_LEFT' FRAME_-254021_CLASS = 4 FRAME_-254021_CLASS_ID = -254021 FRAME_-254021_CENTER = -254 TKFRAME_-254021_RELATIVE = 'MER-2_ROVER' TKFRAME_-254021_SPEC = 'ANGLES' TKFRAME_-254021_UNITS = 'DEGREES' TKFRAME_-254021_AXES = ( 2, 1, 3 ) TKFRAME_-254021_ANGLES = ( 56.520, -0.986, -89.661 ) \begintext The actual MER-2_REAR_HAZCAM_RIGHT frame orientation provided in the frame definition below was computed using the CAHVOR(E) camera model file, 'MER_CAL_61_SN_108.cahvore'. According to this model the reference frame, MER-2_ROVER, can be transformed into the camera frame, MER-2_REAR_HAZCAM_RIGHT, by the following sequence of rotations: first by -56.79688965 degrees about Y, then by 0.95327361 degrees about X, and finally by 90.03067369 degrees about Z. The frame definition below contains the opposite of this transformation because Euler angles specified in it define rotations from the "destination" frame to the "reference" frame. \begindata FRAME_MER-2_REAR_HAZCAM_RIGHT = -254022 FRAME_-254022_NAME = 'MER-2_REAR_HAZCAM_RIGHT' FRAME_-254022_CLASS = 4 FRAME_-254022_CLASS_ID = -254022 FRAME_-254022_CENTER = -254 TKFRAME_-254022_RELATIVE = 'MER-2_ROVER' TKFRAME_-254022_SPEC = 'ANGLES' TKFRAME_-254022_UNITS = 'DEGREES' TKFRAME_-254022_AXES = ( 2, 1, 3 ) TKFRAME_-254022_ANGLES = ( 56.797, -0.953, -90.031 ) \begintext MER-2 PMA Structures and PMA-Mounted Instrument Frames ======================================================================== MER-2 PMA "zero" AZ, PMA Base, and PMA "zero" EL Frames ------------------------------------------------------- MER-2 PMA "zero" AZ frame is introduced to capture offset between the rover X axis and the direction (in horizontal plane) along which the PMA head is pointing at "zero" AZ & EL gimbal angles. Ideally this frame is co-aligned with the rover frame. In reality, its rotational offset about +Z axis from the rover frame is not zero. This frame is defined as a fixed offset frame w.r.t. the rover frame. MER-2 PMA base frame, MER-2_PMA_BASE, is rotated from the "zero" AZ frame by PMA AZ angle about +Z axis. This frame is defined as a CK-based frame. MER-2 PMA "zero" EL frame is introduced to capture offset between the rover XY plane and the direction (in vertical plane) along which the PMA head is pointing at "zero" AZ & EL gimbal angles. Ideally this frame is co-aligned with the PMA base frame. In reality, its rotational offset about +Y axis from the PMA base frame is not zero. This frame is defined as a fixed offset frame w.r.t. the PMA base frame. The actual AZ and EL offset angles, incorporated into the "zero" AZ and EL frame definitions, are: FLIGHT AZ offset = 0.213312 deg FLIGHT EL offset = 3.079992 deg These are the PMA "zero" AZ, PMA base, and PMA "zero" EL frame definitions. \begindata FRAME_MER-2_PMA_ZERO_AZ = -254101 FRAME_-254101_NAME = 'MER-2_PMA_ZERO_AZ' FRAME_-254101_CLASS = 4 FRAME_-254101_CLASS_ID = -254101 FRAME_-254101_CENTER = -254 TKFRAME_-254101_RELATIVE = 'MER-2_ROVER' TKFRAME_-254101_SPEC = 'ANGLES' TKFRAME_-254101_UNITS = 'DEGREES' TKFRAME_-254101_AXES = ( 2, 1, 3 ) TKFRAME_-254101_ANGLES = ( 0.000, 0.000, -0.213312 ) FRAME_MER-2_PMA_BASE = -254100 FRAME_-254100_NAME = 'MER-2_PMA_BASE' FRAME_-254100_CLASS = 3 FRAME_-254100_CLASS_ID = -254100 FRAME_-254100_CENTER = -254 CK_-254100_SCLK = -254 CK_-254100_SPK = -254100 FRAME_MER-2_PMA_ZERO_EL = -254102 FRAME_-254102_NAME = 'MER-2_PMA_ZERO_EL' FRAME_-254102_CLASS = 4 FRAME_-254102_CLASS_ID = -254102 FRAME_-254102_CENTER = -254 TKFRAME_-254102_RELATIVE = 'MER-2_PMA_BASE' TKFRAME_-254102_SPEC = 'ANGLES' TKFRAME_-254102_UNITS = 'DEGREES' TKFRAME_-254102_AXES = ( 2, 1, 3 ) TKFRAME_-254102_ANGLES = ( -3.079992, 0.000, 0.000 ) \begintext MER-2 PMA Head Frame -------------------- MER-2 PMA head frame, MER-2_PMA_HEAD, is defined as follows: -- +X axis is in the direction of the nominal NAVCAM boresight; -- +Y axis is along PMA head elevation rotation axis and points from the left NAVCAM toward the right NAVCAM; -- +Z completes the right hand frame; -- the origin of this frame is at the intersection of the PMA azimuth and elevation rotation axes. During normal surface operations the MER-2_PMA_HEAD frame orientation with respect to the PMA base frame is varying and controlled using azimuth and elevation angles. Therefore, this frame is defined as a CK frame and the frame's orientation with respect to the MER-2_PMA_ZERO_EL frame is provided in the CK files. Ideally, for zero azimuth and elevation position this frame is coincident in orientation with the PMA rover frame. \begindata FRAME_MER-2_PMA_HEAD = -254110 FRAME_-254110_NAME = 'MER-2_PMA_HEAD' FRAME_-254110_CLASS = 3 FRAME_-254110_CLASS_ID = -254110 FRAME_-254110_CENTER = -254 CK_-254110_SCLK = -254 CK_-254110_SPK = -254110 \begintext MER-2 PANCAM and NAVCAM Frames ------------------------------ The frame for each of the two MER-2 NAVCAM cameras -- LEFT and RIGHT, -- and the 16 PANCAM camera/filter combinations is defined as follows: -- +Z axis is along the camera's central pixel view direction ("into image"); -- +Y axis is along the image central column and points from the image center toward the image top row ("up"); -- +X completes the right hand frame and is along the image central row and points from the image center toward the image left column ("left"); -- the origin of the frame is located at the camera focal point. Since both NAVCAM and PANCAM cameras are rigidly mounted on the PMA head, their frames are defined as fixed offset frames with orientation given with respect to the PMA head frame. This diagram illustrates PMA base, head, and instrument frames (zero AZ/EL position): PMA side view: -------------- Ynavcam(l,r) Ypancam(l,r) ^^ || .-. || | |-|| Znavcam(l,r) | | xx----->> Zpancam(l,r) Yminites|^|--' .-|-. .' | `. <--- Elevation Drive Zminites / | \ <------o------> \ | / Xpma_head `. | .' |-| Zpma_head PMA Head .___V___. ............ |...o------> Mounting Plane `---|---' Xpma_base | | | | | | | V Zpma_base ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ .----|----. | | <--- Azimuth Drive & Rotation Axis .----|----' | .'\ | .'.' .'.' | \.' | -------------------------------. -------------------------------' | ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ Yr | o------> ----------' | Xr | | Yr, Ypma_base, Ypma_head, V Zr Xminites are out of page Xnavcam(l,r), Xpancam(l,r) are into page. PMA top view: ------------- | | <--- Elevation rotation axis | ^ Xpancam(l) .________|. | ._. ||Xnavcam(l) | | |_^|| | | | |o------> Zpancam(l) | | |-|'| | | |-| | | | | o------> Znavcam(l) Zr Xr | | |-' | x------> Zpma_head | | | Zpma_base | | | | |x------>Xpma_head | | ||| | Xpma_base Yr v | ||| | Ypma_head || | Ypma_base V| ^ Xnavcam(r) .----| | | | | | | | |Xpancam(r) Zminites <----o|_|^| | ||| o|-----> Znavcam(r) `----|||-'|| | |||--|| | |V| o------> Zpancam(r) Xminites| |--'| | ._. | .___._.___. Zr, Zpma_base, Zpma_head, are into page. Ynavcam(l,r), Ypancam(l,r) and Yminites are out of page. Nominal PMA camera orientations are such that NAVCAM left and right boresights are parallel to each other and the PMA head +X axis, while the PANCAM left and right boresights "toe"ed in by 1 degree toward the PMA head +X axis. In order align PMA head frame with the camera frames in this nominal orientation, it has to be rotated by +90 degrees about Y and then about X by non-zero "toe"-ins for the PANCAM (-1 degree for the left camera and +1 degree for the right camera) and by zero "toe"-ins for NAVCAM, and finally by -90 degrees about Z (to line up Y axis with the vertical direction.) The following sets of keywords should be included into the frame definitions to provide this nominal orientation (provided for reference only): TKFRAME_-254111_AXES = ( 2, 1, 3 ) TKFRAME_-254111_ANGLES = ( -90.000, 0.000, 90.000 ) TKFRAME_-254112_AXES = ( 2, 1, 3 ) TKFRAME_-254112_ANGLES = ( -90.000, 0.000, 90.000 ) TKFRAME_-254121_AXES = ( 2, 1, 3 ) TKFRAME_-254121_ANGLES = ( -90.000, 1.000, 90.000 ) TKFRAME_-254122_AXES = ( 2, 1, 3 ) TKFRAME_-254122_ANGLES = ( -90.000, 1.000, 90.000 ) TKFRAME_-254123_AXES = ( 2, 1, 3 ) TKFRAME_-254123_ANGLES = ( -90.000, 1.000, 90.000 ) TKFRAME_-254124_AXES = ( 2, 1, 3 ) TKFRAME_-254124_ANGLES = ( -90.000, 1.000, 90.000 ) TKFRAME_-254125_AXES = ( 2, 1, 3 ) TKFRAME_-254125_ANGLES = ( -90.000, 1.000, 90.000 ) TKFRAME_-254126_AXES = ( 2, 1, 3 ) TKFRAME_-254126_ANGLES = ( -90.000, 1.000, 90.000 ) TKFRAME_-254127_AXES = ( 2, 1, 3 ) TKFRAME_-254127_ANGLES = ( -90.000, 1.000, 90.000 ) TKFRAME_-254128_AXES = ( 2, 1, 3 ) TKFRAME_-254128_ANGLES = ( -90.000, 1.000, 90.000 ) TKFRAME_-254131_AXES = ( 2, 1, 3 ) TKFRAME_-254131_ANGLES = ( -90.000, -1.000, 90.000 ) TKFRAME_-254132_AXES = ( 2, 1, 3 ) TKFRAME_-254132_ANGLES = ( -90.000, -1.000, 90.000 ) TKFRAME_-254133_AXES = ( 2, 1, 3 ) TKFRAME_-254133_ANGLES = ( -90.000, -1.000, 90.000 ) TKFRAME_-254134_AXES = ( 2, 1, 3 ) TKFRAME_-254134_ANGLES = ( -90.000, -1.000, 90.000 ) TKFRAME_-254135_AXES = ( 2, 1, 3 ) TKFRAME_-254135_ANGLES = ( -90.000, -1.000, 90.000 ) TKFRAME_-254136_AXES = ( 2, 1, 3 ) TKFRAME_-254136_ANGLES = ( -90.000, -1.000, 90.000 ) TKFRAME_-254137_AXES = ( 2, 1, 3 ) TKFRAME_-254137_ANGLES = ( -90.000, -1.000, 90.000 ) TKFRAME_-254138_AXES = ( 2, 1, 3 ) TKFRAME_-254138_ANGLES = ( -90.000, -1.000, 90.000 ) The actual MER-2_NAVCAM_LEFT frame orientation provided in the frame definition below was computed using the CAHVOR(E) camera model file, 'MER_CAL_174_SN_112.cahvor'. According to this model the reference frame, MER-2_PMA_HEAD, can be transformed into the camera frame, MER-2_NAVCAM_LEFT, by the following sequence of rotations: first by 90.22953921 degrees about Y, then by -0.57967117 degrees about X, and finally by -89.71569784 degrees about Z. The frame definition below contains the opposite of this transformation because Euler angles specified in it define rotations from the "destination" frame to the "reference" frame. \begindata FRAME_MER-2_NAVCAM_LEFT = -254111 FRAME_-254111_NAME = 'MER-2_NAVCAM_LEFT' FRAME_-254111_CLASS = 4 FRAME_-254111_CLASS_ID = -254111 FRAME_-254111_CENTER = -254 TKFRAME_-254111_RELATIVE = 'MER-2_PMA_HEAD' TKFRAME_-254111_SPEC = 'ANGLES' TKFRAME_-254111_UNITS = 'DEGREES' TKFRAME_-254111_AXES = ( 2, 1, 3 ) TKFRAME_-254111_ANGLES = ( -90.230, 0.580, 89.716 ) \begintext The actual MER-2_NAVCAM_RIGHT frame orientation provided in the frame definition below was computed using the CAHVOR(E) camera model file, 'MER_CAL_175_SN_113.cahvor'. According to this model the reference frame, MER-2_PMA_HEAD, can be transformed into the camera frame, MER-2_NAVCAM_RIGHT, by the following sequence of rotations: first by 90.29571982 degrees about Y, then by -0.57663448 degrees about X, and finally by -89.67959576 degrees about Z. The frame definition below contains the opposite of this transformation because Euler angles specified in it define rotations from the "destination" frame to the "reference" frame. \begindata FRAME_MER-2_NAVCAM_RIGHT = -254112 FRAME_-254112_NAME = 'MER-2_NAVCAM_RIGHT' FRAME_-254112_CLASS = 4 FRAME_-254112_CLASS_ID = -254112 FRAME_-254112_CENTER = -254 TKFRAME_-254112_RELATIVE = 'MER-2_PMA_HEAD' TKFRAME_-254112_SPEC = 'ANGLES' TKFRAME_-254112_UNITS = 'DEGREES' TKFRAME_-254112_AXES = ( 2, 1, 3 ) TKFRAME_-254112_ANGLES = ( -90.296, 0.577, 89.680 ) \begintext The actual MER-2_PANCAM_LEFT_F1 frame orientation provided in the frame definition below was computed using the CAHVOR(E) camera model file, 'MER_CAL_176_SN_104_F_1.cahvor'. According to this model the reference frame, MER-2_PMA_HEAD, can be transformed into the camera frame, MER-2_PANCAM_LEFT_F1, by the following sequence of rotations: first by 90.05088205 degrees about Y, then by -0.65914547 degrees about X, and finally by -90.31522256 degrees about Z. The frame definition below contains the opposite of this transformation because Euler angles specified in it define rotations from the "destination" frame to the "reference" frame. \begindata FRAME_MER-2_PANCAM_LEFT_F1 = -254121 FRAME_-254121_NAME = 'MER-2_PANCAM_LEFT_F1' FRAME_-254121_CLASS = 4 FRAME_-254121_CLASS_ID = -254121 FRAME_-254121_CENTER = -254 TKFRAME_-254121_RELATIVE = 'MER-2_PMA_HEAD' TKFRAME_-254121_SPEC = 'ANGLES' TKFRAME_-254121_UNITS = 'DEGREES' TKFRAME_-254121_AXES = ( 2, 1, 3 ) TKFRAME_-254121_ANGLES = ( -90.051, 0.659, 90.315 ) \begintext The actual MER-2_PANCAM_LEFT_F2 frame orientation provided in the frame definition below was computed using the CAHVOR(E) camera model file, 'MER_CAL_177_SN_104_F_2.cahvor'. According to this model the reference frame, MER-2_PMA_HEAD, can be transformed into the camera frame, MER-2_PANCAM_LEFT_F2, by the following sequence of rotations: first by 90.05088205 degrees about Y, then by -0.65914547 degrees about X, and finally by -90.31522256 degrees about Z. The frame definition below contains the opposite of this transformation because Euler angles specified in it define rotations from the "destination" frame to the "reference" frame. \begindata FRAME_MER-2_PANCAM_LEFT_F2 = -254122 FRAME_-254122_NAME = 'MER-2_PANCAM_LEFT_F2' FRAME_-254122_CLASS = 4 FRAME_-254122_CLASS_ID = -254122 FRAME_-254122_CENTER = -254 TKFRAME_-254122_RELATIVE = 'MER-2_PMA_HEAD' TKFRAME_-254122_SPEC = 'ANGLES' TKFRAME_-254122_UNITS = 'DEGREES' TKFRAME_-254122_AXES = ( 2, 1, 3 ) TKFRAME_-254122_ANGLES = ( -90.051, 0.659, 90.315 ) \begintext The actual MER-2_PANCAM_LEFT_F3 frame orientation provided in the frame definition below was computed using the CAHVOR(E) camera model file, 'MER_CAL_178_SN_104_F_3.cahvor'. According to this model the reference frame, MER-2_PMA_HEAD, can be transformed into the camera frame, MER-2_PANCAM_LEFT_F3, by the following sequence of rotations: first by 90.05088205 degrees about Y, then by -0.65914547 degrees about X, and finally by -90.31522256 degrees about Z. The frame definition below contains the opposite of this transformation because Euler angles specified in it define rotations from the "destination" frame to the "reference" frame. \begindata FRAME_MER-2_PANCAM_LEFT_F3 = -254123 FRAME_-254123_NAME = 'MER-2_PANCAM_LEFT_F3' FRAME_-254123_CLASS = 4 FRAME_-254123_CLASS_ID = -254123 FRAME_-254123_CENTER = -254 TKFRAME_-254123_RELATIVE = 'MER-2_PMA_HEAD' TKFRAME_-254123_SPEC = 'ANGLES' TKFRAME_-254123_UNITS = 'DEGREES' TKFRAME_-254123_AXES = ( 2, 1, 3 ) TKFRAME_-254123_ANGLES = ( -90.051, 0.659, 90.315 ) \begintext The actual MER-2_PANCAM_LEFT_F4 frame orientation provided in the frame definition below was computed using the CAHVOR(E) camera model file, 'MER_CAL_179_SN_104_F_4.cahvor'. According to this model the reference frame, MER-2_PMA_HEAD, can be transformed into the camera frame, MER-2_PANCAM_LEFT_F4, by the following sequence of rotations: first by 90.05088205 degrees about Y, then by -0.65914547 degrees about X, and finally by -90.31522256 degrees about Z. The frame definition below contains the opposite of this transformation because Euler angles specified in it define rotations from the "destination" frame to the "reference" frame. \begindata FRAME_MER-2_PANCAM_LEFT_F4 = -254124 FRAME_-254124_NAME = 'MER-2_PANCAM_LEFT_F4' FRAME_-254124_CLASS = 4 FRAME_-254124_CLASS_ID = -254124 FRAME_-254124_CENTER = -254 TKFRAME_-254124_RELATIVE = 'MER-2_PMA_HEAD' TKFRAME_-254124_SPEC = 'ANGLES' TKFRAME_-254124_UNITS = 'DEGREES' TKFRAME_-254124_AXES = ( 2, 1, 3 ) TKFRAME_-254124_ANGLES = ( -90.051, 0.659, 90.315 ) \begintext The actual MER-2_PANCAM_LEFT_F5 frame orientation provided in the frame definition below was computed using the CAHVOR(E) camera model file, 'MER_CAL_180_SN_104_F_5.cahvor'. According to this model the reference frame, MER-2_PMA_HEAD, can be transformed into the camera frame, MER-2_PANCAM_LEFT_F5, by the following sequence of rotations: first by 90.05088205 degrees about Y, then by -0.65914547 degrees about X, and finally by -90.31522256 degrees about Z. The frame definition below contains the opposite of this transformation because Euler angles specified in it define rotations from the "destination" frame to the "reference" frame. \begindata FRAME_MER-2_PANCAM_LEFT_F5 = -254125 FRAME_-254125_NAME = 'MER-2_PANCAM_LEFT_F5' FRAME_-254125_CLASS = 4 FRAME_-254125_CLASS_ID = -254125 FRAME_-254125_CENTER = -254 TKFRAME_-254125_RELATIVE = 'MER-2_PMA_HEAD' TKFRAME_-254125_SPEC = 'ANGLES' TKFRAME_-254125_UNITS = 'DEGREES' TKFRAME_-254125_AXES = ( 2, 1, 3 ) TKFRAME_-254125_ANGLES = ( -90.051, 0.659, 90.315 ) \begintext The actual MER-2_PANCAM_LEFT_F6 frame orientation provided in the frame definition below was computed using the CAHVOR(E) camera model file, 'MER_CAL_181_SN_104_F_6.cahvor'. According to this model the reference frame, MER-2_PMA_HEAD, can be transformed into the camera frame, MER-2_PANCAM_LEFT_F6, by the following sequence of rotations: first by 90.05088205 degrees about Y, then by -0.65914547 degrees about X, and finally by -90.31522256 degrees about Z. The frame definition below contains the opposite of this transformation because Euler angles specified in it define rotations from the "destination" frame to the "reference" frame. \begindata FRAME_MER-2_PANCAM_LEFT_F6 = -254126 FRAME_-254126_NAME = 'MER-2_PANCAM_LEFT_F6' FRAME_-254126_CLASS = 4 FRAME_-254126_CLASS_ID = -254126 FRAME_-254126_CENTER = -254 TKFRAME_-254126_RELATIVE = 'MER-2_PMA_HEAD' TKFRAME_-254126_SPEC = 'ANGLES' TKFRAME_-254126_UNITS = 'DEGREES' TKFRAME_-254126_AXES = ( 2, 1, 3 ) TKFRAME_-254126_ANGLES = ( -90.051, 0.659, 90.315 ) \begintext The actual MER-2_PANCAM_LEFT_F7 frame orientation provided in the frame definition below was computed using the CAHVOR(E) camera model file, 'MER_CAL_182_SN_104_F_7.cahvor'. According to this model the reference frame, MER-2_PMA_HEAD, can be transformed into the camera frame, MER-2_PANCAM_LEFT_F7, by the following sequence of rotations: first by 90.05088205 degrees about Y, then by -0.65914547 degrees about X, and finally by -90.31522256 degrees about Z. The frame definition below contains the opposite of this transformation because Euler angles specified in it define rotations from the "destination" frame to the "reference" frame. \begindata FRAME_MER-2_PANCAM_LEFT_F7 = -254127 FRAME_-254127_NAME = 'MER-2_PANCAM_LEFT_F7' FRAME_-254127_CLASS = 4 FRAME_-254127_CLASS_ID = -254127 FRAME_-254127_CENTER = -254 TKFRAME_-254127_RELATIVE = 'MER-2_PMA_HEAD' TKFRAME_-254127_SPEC = 'ANGLES' TKFRAME_-254127_UNITS = 'DEGREES' TKFRAME_-254127_AXES = ( 2, 1, 3 ) TKFRAME_-254127_ANGLES = ( -90.051, 0.659, 90.315 ) \begintext The actual MER-2_PANCAM_LEFT_F8 frame orientation provided in the frame definition below was computed using the CAHVOR(E) camera model file, 'MER_CAL_183_SN_104_F_8.cahvor'. According to this model the reference frame, MER-2_PMA_HEAD, can be transformed into the camera frame, MER-2_PANCAM_LEFT_F8, by the following sequence of rotations: first by 90.05088205 degrees about Y, then by -0.65914547 degrees about X, and finally by -90.31522256 degrees about Z. The frame definition below contains the opposite of this transformation because Euler angles specified in it define rotations from the "destination" frame to the "reference" frame. \begindata FRAME_MER-2_PANCAM_LEFT_F8 = -254128 FRAME_-254128_NAME = 'MER-2_PANCAM_LEFT_F8' FRAME_-254128_CLASS = 4 FRAME_-254128_CLASS_ID = -254128 FRAME_-254128_CENTER = -254 TKFRAME_-254128_RELATIVE = 'MER-2_PMA_HEAD' TKFRAME_-254128_SPEC = 'ANGLES' TKFRAME_-254128_UNITS = 'DEGREES' TKFRAME_-254128_AXES = ( 2, 1, 3 ) TKFRAME_-254128_ANGLES = ( -90.051, 0.659, 90.315 ) \begintext The actual MER-2_PANCAM_RIGHT_F1 frame orientation provided in the frame definition below was computed using the CAHVOR(E) camera model file, 'MER_CAL_184_SN_103_F_1.cahvor'. According to this model the reference frame, MER-2_PMA_HEAD, can be transformed into the camera frame, MER-2_PANCAM_RIGHT_F1, by the following sequence of rotations: first by 89.94589716 degrees about Y, then by 1.37626248 degrees about X, and finally by -90.40035331 degrees about Z. The frame definition below contains the opposite of this transformation because Euler angles specified in it define rotations from the "destination" frame to the "reference" frame. \begindata FRAME_MER-2_PANCAM_RIGHT_F1 = -254131 FRAME_-254131_NAME = 'MER-2_PANCAM_RIGHT_F1' FRAME_-254131_CLASS = 4 FRAME_-254131_CLASS_ID = -254131 FRAME_-254131_CENTER = -254 TKFRAME_-254131_RELATIVE = 'MER-2_PMA_HEAD' TKFRAME_-254131_SPEC = 'ANGLES' TKFRAME_-254131_UNITS = 'DEGREES' TKFRAME_-254131_AXES = ( 2, 1, 3 ) TKFRAME_-254131_ANGLES = ( -89.946, -1.376, 90.400 ) \begintext The actual MER-2_PANCAM_RIGHT_F2 frame orientation provided in the frame definition below was computed using the CAHVOR(E) camera model file, 'MER_CAL_185_SN_103_F_2.cahvor'. According to this model the reference frame, MER-2_PMA_HEAD, can be transformed into the camera frame, MER-2_PANCAM_RIGHT_F2, by the following sequence of rotations: first by 89.94589716 degrees about Y, then by 1.37626248 degrees about X, and finally by -90.40035331 degrees about Z. The frame definition below contains the opposite of this transformation because Euler angles specified in it define rotations from the "destination" frame to the "reference" frame. \begindata FRAME_MER-2_PANCAM_RIGHT_F2 = -254132 FRAME_-254132_NAME = 'MER-2_PANCAM_RIGHT_F2' FRAME_-254132_CLASS = 4 FRAME_-254132_CLASS_ID = -254132 FRAME_-254132_CENTER = -254 TKFRAME_-254132_RELATIVE = 'MER-2_PMA_HEAD' TKFRAME_-254132_SPEC = 'ANGLES' TKFRAME_-254132_UNITS = 'DEGREES' TKFRAME_-254132_AXES = ( 2, 1, 3 ) TKFRAME_-254132_ANGLES = ( -89.946, -1.376, 90.400 ) \begintext The actual MER-2_PANCAM_RIGHT_F3 frame orientation provided in the frame definition below was computed using the CAHVOR(E) camera model file, 'MER_CAL_186_SN_103_F_3.cahvor'. According to this model the reference frame, MER-2_PMA_HEAD, can be transformed into the camera frame, MER-2_PANCAM_RIGHT_F3, by the following sequence of rotations: first by 89.94589716 degrees about Y, then by 1.37626248 degrees about X, and finally by -90.40035331 degrees about Z. The frame definition below contains the opposite of this transformation because Euler angles specified in it define rotations from the "destination" frame to the "reference" frame. \begindata FRAME_MER-2_PANCAM_RIGHT_F3 = -254133 FRAME_-254133_NAME = 'MER-2_PANCAM_RIGHT_F3' FRAME_-254133_CLASS = 4 FRAME_-254133_CLASS_ID = -254133 FRAME_-254133_CENTER = -254 TKFRAME_-254133_RELATIVE = 'MER-2_PMA_HEAD' TKFRAME_-254133_SPEC = 'ANGLES' TKFRAME_-254133_UNITS = 'DEGREES' TKFRAME_-254133_AXES = ( 2, 1, 3 ) TKFRAME_-254133_ANGLES = ( -89.946, -1.376, 90.400 ) \begintext The actual MER-2_PANCAM_RIGHT_F4 frame orientation provided in the frame definition below was computed using the CAHVOR(E) camera model file, 'MER_CAL_187_SN_103_F_4.cahvor'. According to this model the reference frame, MER-2_PMA_HEAD, can be transformed into the camera frame, MER-2_PANCAM_RIGHT_F4, by the following sequence of rotations: first by 89.94589716 degrees about Y, then by 1.37626248 degrees about X, and finally by -90.40035331 degrees about Z. The frame definition below contains the opposite of this transformation because Euler angles specified in it define rotations from the "destination" frame to the "reference" frame. \begindata FRAME_MER-2_PANCAM_RIGHT_F4 = -254134 FRAME_-254134_NAME = 'MER-2_PANCAM_RIGHT_F4' FRAME_-254134_CLASS = 4 FRAME_-254134_CLASS_ID = -254134 FRAME_-254134_CENTER = -254 TKFRAME_-254134_RELATIVE = 'MER-2_PMA_HEAD' TKFRAME_-254134_SPEC = 'ANGLES' TKFRAME_-254134_UNITS = 'DEGREES' TKFRAME_-254134_AXES = ( 2, 1, 3 ) TKFRAME_-254134_ANGLES = ( -89.946, -1.376, 90.400 ) \begintext The actual MER-2_PANCAM_RIGHT_F5 frame orientation provided in the frame definition below was computed using the CAHVOR(E) camera model file, 'MER_CAL_188_SN_103_F_5.cahvor'. According to this model the reference frame, MER-2_PMA_HEAD, can be transformed into the camera frame, MER-2_PANCAM_RIGHT_F5, by the following sequence of rotations: first by 89.94589716 degrees about Y, then by 1.37626248 degrees about X, and finally by -90.40035331 degrees about Z. The frame definition below contains the opposite of this transformation because Euler angles specified in it define rotations from the "destination" frame to the "reference" frame. \begindata FRAME_MER-2_PANCAM_RIGHT_F5 = -254135 FRAME_-254135_NAME = 'MER-2_PANCAM_RIGHT_F5' FRAME_-254135_CLASS = 4 FRAME_-254135_CLASS_ID = -254135 FRAME_-254135_CENTER = -254 TKFRAME_-254135_RELATIVE = 'MER-2_PMA_HEAD' TKFRAME_-254135_SPEC = 'ANGLES' TKFRAME_-254135_UNITS = 'DEGREES' TKFRAME_-254135_AXES = ( 2, 1, 3 ) TKFRAME_-254135_ANGLES = ( -89.946, -1.376, 90.400 ) \begintext The actual MER-2_PANCAM_RIGHT_F6 frame orientation provided in the frame definition below was computed using the CAHVOR(E) camera model file, 'MER_CAL_189_SN_103_F_6.cahvor'. According to this model the reference frame, MER-2_PMA_HEAD, can be transformed into the camera frame, MER-2_PANCAM_RIGHT_F6, by the following sequence of rotations: first by 89.94589716 degrees about Y, then by 1.37626248 degrees about X, and finally by -90.40035331 degrees about Z. The frame definition below contains the opposite of this transformation because Euler angles specified in it define rotations from the "destination" frame to the "reference" frame. \begindata FRAME_MER-2_PANCAM_RIGHT_F6 = -254136 FRAME_-254136_NAME = 'MER-2_PANCAM_RIGHT_F6' FRAME_-254136_CLASS = 4 FRAME_-254136_CLASS_ID = -254136 FRAME_-254136_CENTER = -254 TKFRAME_-254136_RELATIVE = 'MER-2_PMA_HEAD' TKFRAME_-254136_SPEC = 'ANGLES' TKFRAME_-254136_UNITS = 'DEGREES' TKFRAME_-254136_AXES = ( 2, 1, 3 ) TKFRAME_-254136_ANGLES = ( -89.946, -1.376, 90.400 ) \begintext The actual MER-2_PANCAM_RIGHT_F7 frame orientation provided in the frame definition below was computed using the CAHVOR(E) camera model file, 'MER_CAL_190_SN_103_F_7.cahvor'. According to this model the reference frame, MER-2_PMA_HEAD, can be transformed into the camera frame, MER-2_PANCAM_RIGHT_F7, by the following sequence of rotations: first by 89.94589716 degrees about Y, then by 1.37626248 degrees about X, and finally by -90.40035331 degrees about Z. The frame definition below contains the opposite of this transformation because Euler angles specified in it define rotations from the "destination" frame to the "reference" frame. \begindata FRAME_MER-2_PANCAM_RIGHT_F7 = -254137 FRAME_-254137_NAME = 'MER-2_PANCAM_RIGHT_F7' FRAME_-254137_CLASS = 4 FRAME_-254137_CLASS_ID = -254137 FRAME_-254137_CENTER = -254 TKFRAME_-254137_RELATIVE = 'MER-2_PMA_HEAD' TKFRAME_-254137_SPEC = 'ANGLES' TKFRAME_-254137_UNITS = 'DEGREES' TKFRAME_-254137_AXES = ( 2, 1, 3 ) TKFRAME_-254137_ANGLES = ( -89.946, -1.376, 90.400 ) \begintext The actual MER-2_PANCAM_RIGHT_F8 frame orientation provided in the frame definition below was computed using the CAHVOR(E) camera model file, 'MER_CAL_191_SN_103_F_8.cahvor'. According to this model the reference frame, MER-2_PMA_HEAD, can be transformed into the camera frame, MER-2_PANCAM_RIGHT_F8, by the following sequence of rotations: first by 89.94589716 degrees about Y, then by 1.37626248 degrees about X, and finally by -90.40035331 degrees about Z. The frame definition below contains the opposite of this transformation because Euler angles specified in it define rotations from the "destination" frame to the "reference" frame. \begindata FRAME_MER-2_PANCAM_RIGHT_F8 = -254138 FRAME_-254138_NAME = 'MER-2_PANCAM_RIGHT_F8' FRAME_-254138_CLASS = 4 FRAME_-254138_CLASS_ID = -254138 FRAME_-254138_CENTER = -254 TKFRAME_-254138_RELATIVE = 'MER-2_PMA_HEAD' TKFRAME_-254138_SPEC = 'ANGLES' TKFRAME_-254138_UNITS = 'DEGREES' TKFRAME_-254138_AXES = ( 2, 1, 3 ) TKFRAME_-254138_ANGLES = ( -89.946, -1.376, 90.400 ) \begintext MER-2 MINI-TES Frame -------------------- The frame for Mini-TES is defined as follows: -- +Z axis is along the instrument boresight defined as the central pixel view direction ("into image"); -- +Y axis is along the image central column and points from the image center toward the image top row ("up"); -- +X completes the right hand frame and is along the image central row and points from the image center toward the image left column ("left"); -- the origin of the frame is located at the instrument's focal point. Since Mini-TES is rigidly mounted on the PMA head, its frame is defined as fixed offset frame with orientation given with respect to the PMA head frame. Actual Mini-TEST frame orientation will be derived from the final instrument geometric model as soon as such becomes available. Until then the frame orientation provided below is set in accordance with the nominal design -- Mini-TES boresight parallel to the PMA head -X axis. In order align PMA head frame with the Mini-TES frame in this nominal orientation, it has to be rotated by -90 degrees about Y and then by +90 degrees about +Z. \begindata FRAME_MER-2_MINITES = -254140 FRAME_-254140_NAME = 'MER-2_MINITES' FRAME_-254140_CLASS = 4 FRAME_-254140_CLASS_ID = -254140 FRAME_-254140_CENTER = -254 TKFRAME_-254140_RELATIVE = 'MER-2_PMA_HEAD' TKFRAME_-254140_SPEC = 'ANGLES' TKFRAME_-254140_UNITS = 'DEGREES' TKFRAME_-254140_AXES = ( 2, 1, 3 ) TKFRAME_-254140_ANGLES = ( 90.000, 0.000, -90.000 ) \begintext MER-2 IDD Structures and IDD-Mounted Instrument Frames ======================================================================== MER-2 IDD Structures Frames --------------------------- MER-2 IDD base frame, MER-2_IDD_BASE, called in [5] IDD_MNT frame, is defined to be coincident in orientation with the rover frame. The origin of this frame is at center of the registration pin in the IDD mounting plate. THIS FRAME, MER-2_IDD_BASE, IS OBSOLETE BECAUSE IT ENDED UP NO BEING USED FOR ANYTHING. IT IS KEEP IN THE FK FOR MAINTENANCE REASONS. Since this frame is fixed with respect to and coincident with the rover it's defined as zero offset frame with respect to the rover frame. \begindata FRAME_MER-2_IDD_BASE = -254200 FRAME_-254200_NAME = 'MER-2_IDD_BASE' FRAME_-254200_CLASS = 4 FRAME_-254200_CLASS_ID = -254200 FRAME_-254200_CENTER = -254 TKFRAME_-254200_RELATIVE = 'MER-2_ROVER' TKFRAME_-254200_SPEC = 'ANGLES' TKFRAME_-254200_UNITS = 'DEGREES' TKFRAME_-254200_AXES = ( 1, 2, 3 ) TKFRAME_-254200_ANGLES = ( 0.000, 0.000, 0.000 ) \begintext All MER-2 IDD joint frames -- SHOULDER_AZ, SHOULDER_EL, ELBOW, WRIST, and TURRET, enumerated in [5] as IDD0...IDD4 frames -- are defined in accordance with normal kinematics convention as follows: -- +Z axis is along the joint rotation axis, nominally pointing along rover +Z for SHOULDER_AZ, along rover -Y (for IDD in straight out position) for SHOULDER_EL, ELBOW, and WRIST, and along wrist +Y for TURRET; -- +X axis is along the link attached to the joint; -- +Y completes the right hand frame; -- the origin lies on the rotation axis at a point that provides for the minimum magnitude of translations between the joints (see diagram above). This diagram illustrates IDD base and joint frames in "zero joint rotation" position: IDD side view: ------------- Shoulder/Az Turret axis axis | | . . | | //////// APXS .___. RAT //Rover// | | ///////// Xsh_az | o------> /////o------> ._|_. Xtr | | | .-. .-. .|. | | || x------> =======| x------> =======| x------> Zsh_az_|_. `| Xsh_el `|' Xelb Ztr`V' Xwr V | | | | | | o------> V Ysh_el V Yelb V Ywr | Xr | | V Yr, Ybase, Ysh_az, Ytr are out of page; Zr Zsh_el, Zelb, Zwr are into page. IDD top view: ------------ Shoulder/El Elbow Wrist axis axis axis | | | . . . | | | ////// Zsh_el Zelb Zwr //////// ^ ^ ^ /Rover// ._|_. ._|_. | //////// | | |-------------| | | | /////.-. | | |-------------| | | Xelb ._|_. Xwr ////| x----x->----> | x------> -------| x------> /////`|' Xsh_az Xsh_el ._|_.-------------| | //////|/ | MI| //////|/ |.-.| Xtr /////V/ Ysh_az APXS | x--RAT-> ///// `|' MSB | x------> Xr V Ytr | | | Zr, Zbase, Zsh_az, Ysh_el, V Yr Yelb, Ywr, and Ztr are all into the page During normal surface operations the orientation of each of these frames with respect to each other varies and is controlled and telemetered using IDD joint angles. Therefore, these frame are defined as a CK frames with the orientation for each frame provided with respect to its parent in the frame chain. \begindata FRAME_MER-2_IDD_SHOULDER_AZ = -254201 FRAME_-254201_NAME = 'MER-2_IDD_SHOULDER_AZ' FRAME_-254201_CLASS = 3 FRAME_-254201_CLASS_ID = -254201 FRAME_-254201_CENTER = -254 CK_-254201_SCLK = -254 CK_-254201_SPK = -254201 FRAME_MER-2_IDD_SHOULDER_EL = -254202 FRAME_-254202_NAME = 'MER-2_IDD_SHOULDER_EL' FRAME_-254202_CLASS = 3 FRAME_-254202_CLASS_ID = -254202 FRAME_-254202_CENTER = -254 CK_-254202_SCLK = -254 CK_-254202_SPK = -254202 FRAME_MER-2_IDD_ELBOW = -254203 FRAME_-254203_NAME = 'MER-2_IDD_ELBOW' FRAME_-254203_CLASS = 3 FRAME_-254203_CLASS_ID = -254203 FRAME_-254203_CENTER = -254 CK_-254203_SCLK = -254 CK_-254203_SPK = -254203 FRAME_MER-2_IDD_WRIST = -254204 FRAME_-254204_NAME = 'MER-2_IDD_WRIST' FRAME_-254204_CLASS = 3 FRAME_-254204_CLASS_ID = -254204 FRAME_-254204_CENTER = -254 CK_-254204_SCLK = -254 CK_-254204_SPK = -254204 FRAME_MER-2_IDD_TURRET = -254205 FRAME_-254205_NAME = 'MER-2_IDD_TURRET' FRAME_-254205_CLASS = 3 FRAME_-254205_CLASS_ID = -254205 FRAME_-254205_CENTER = -254 CK_-254205_SCLK = -254 CK_-254205_SPK = -254205 \begintext MER-2 IDD Instrument Frames --------------------------- MER-2 TURRET HEAD frame, enumerated as IDD5 in [5], is defined as follows: -- +Z axis is along the nominal Micro-Imager boresight; -- +Y axis is along the turret rotation axis; -- +X axis completes the right frame; -- the origin is at the intersection of the nominal turret rotation axis and Micro-Imager boresight; Although this frame is fixed with respect to the MER-2_IDD_TURRET frame, is nominally rotated from it by +90 degrees about +X axis, and was defined as a fixed offset frame using these keywords: FRAME_MER-2_IDD_TURRET_HEAD = -254206 FRAME_-254206_NAME = 'MER-2_IDD_TURRET_HEAD' FRAME_-254206_CLASS = 4 FRAME_-254206_CLASS_ID = -254206 FRAME_-254206_CENTER = -254 TKFRAME_-254206_RELATIVE = 'MER-2_IDD_TURRET' TKFRAME_-254206_SPEC = 'ANGLES' TKFRAME_-254206_UNITS = 'DEGREES' TKFRAME_-254206_AXES = ( 1, 2, 3 ) TKFRAME_-254206_ANGLES = ( -90.000, 0.000, 0.000 ) in the FK versions 0.5 and below, it was re-classified as CK-based frame to allow storing its deflected orientation directly w.r.t. to the ROVER frame. \begindata FRAME_MER-2_IDD_TURRET_HEAD = -254206 FRAME_-254206_NAME = 'MER-2_IDD_TURRET_HEAD' FRAME_-254206_CLASS = 3 FRAME_-254206_CLASS_ID = -254206 FRAME_-254206_CENTER = -254 CK_-254206_SCLK = -254 CK_-254206_SPK = -254206 \begintext MER-2 IDD instrument frames -- MICROIMAGER_F1 (closed cover), MICROIMAGER_F1 (open cover), APXS, RAT, and MOSSBAUER -- are fixed with respect to the TURRET_HEAD frame and are nominally rotated from it about Y axis by the following angles (from [5]): Instrument Angle, deg ------------- ---------- MICROIMAGER 0.0 RAT 90.0 MOSSBAUER 180.0 APXS 270.0 The actual calibrated values of these angles from [6] are: Instrument Angle, rad ------------- ----------- MICROIMAGER 0.0000 RAT 1.5708 MOSSBAUER 3.3161 APXS 4.7124 This diagram illustrates IDD head and instrument frames (looking in the direction of Ztr axis): Ztr, Ytrh, Ymi, Yrat Ymsb, Yapxs are all ^ Zmi into page. | | MicroImager | .x------>Xmi Xapxs '___` ^ | ^ Ztrh |________. .-|-. | |==.' | `. --. RAT Zapxs | | / | \-----' | <------x | | x------> | |>x------> Zrat | | \ | Xtr -. | | .________.==`. | . Xtrh --' | APXS `-|-' | | V Ytr V Xrat | | | | | MOSSBAUER <------x-' Xmbs | | | V Zmsb All these frames are defined as fixed offset frames with respect to TURRET_HEAD frame with offsets corresponding to the table below. The following sets of keywords should be included into the frame definitions to provide this nominal orientation (provided for reference only): TKFRAME_-254230_AXES = ( 1, 2, 3 ) TKFRAME_-254230_ANGLES = ( 0.000, -1.5708, 0.000 ) TKFRAME_-254240_AXES = ( 1, 2, 3 ) TKFRAME_-254240_ANGLES = ( 0.000, -3.3161, 0.000 ) TKFRAME_-254210_AXES = ( 1, 2, 3 ) TKFRAME_-254210_ANGLES = ( 0.000, -4.7124, 0.000 ) TKFRAME_-254221_AXES = ( 1, 2, 3 ) TKFRAME_-254221_ANGLES = ( 0.000, 0.0000, 0.000 ) TKFRAME_-254222_AXES = ( 1, 2, 3 ) TKFRAME_-254222_ANGLES = ( 0.000, 0.0000, 0.000 ) \begindata FRAME_MER-2_RAT = -254230 FRAME_-254230_NAME = 'MER-2_RAT' FRAME_-254230_CLASS = 4 FRAME_-254230_CLASS_ID = -254230 FRAME_-254230_CENTER = -254 TKFRAME_-254230_RELATIVE = 'MER-2_IDD_TURRET_HEAD' TKFRAME_-254230_SPEC = 'ANGLES' TKFRAME_-254230_UNITS = 'RADIANS' TKFRAME_-254230_AXES = ( 1, 2, 3 ) TKFRAME_-254230_ANGLES = ( 0.000, -1.5708, 0.000 ) FRAME_MER-2_MOSSBAUER = -254240 FRAME_-254240_NAME = 'MER-2_MOSSBAUER' FRAME_-254240_CLASS = 4 FRAME_-254240_CLASS_ID = -254240 FRAME_-254240_CENTER = -254 TKFRAME_-254240_RELATIVE = 'MER-2_IDD_TURRET_HEAD' TKFRAME_-254240_SPEC = 'ANGLES' TKFRAME_-254240_UNITS = 'RADIANS' TKFRAME_-254240_AXES = ( 1, 2, 3 ) TKFRAME_-254240_ANGLES = ( 0.000, -3.3161, 0.000 ) FRAME_MER-2_APXS = -254210 FRAME_-254210_NAME = 'MER-2_APXS' FRAME_-254210_CLASS = 4 FRAME_-254210_CLASS_ID = -254210 FRAME_-254210_CENTER = -254 TKFRAME_-254210_RELATIVE = 'MER-2_IDD_TURRET_HEAD' TKFRAME_-254210_SPEC = 'ANGLES' TKFRAME_-254210_UNITS = 'RADIANS' TKFRAME_-254210_AXES = ( 1, 2, 3 ) TKFRAME_-254210_ANGLES = ( 0.000, -4.7124, 0.000 ) \begintext The actual MER-2_MICROIMAGER_F1 frame orientation provided in the frame definition below was computed using the CAHVOR(E) camera model file, 'MER_CAL_173_SN_105_F_1.cahvor'. According to this model the reference frame, MER-2_IDD_TURRET_HEAD, can be transformed into the camera frame, MER-2_MICROIMAGER_F1, by the following sequence of rotations: first by -0.26622835 degrees about Y, then by 0.87688892 degrees about X, and finally by 0.62270255 degrees about Z. The frame definition below contains the opposite of this transformation because Euler angles specified in it define rotations from the "destination" frame to the "reference" frame. \begindata FRAME_MER-2_MICROIMAGER_F1 = -254221 FRAME_-254221_NAME = 'MER-2_MICROIMAGER_F1' FRAME_-254221_CLASS = 4 FRAME_-254221_CLASS_ID = -254221 FRAME_-254221_CENTER = -254 TKFRAME_-254221_RELATIVE = 'MER-2_IDD_TURRET_HEAD' TKFRAME_-254221_SPEC = 'ANGLES' TKFRAME_-254221_UNITS = 'DEGREES' TKFRAME_-254221_AXES = ( 2, 1, 3 ) TKFRAME_-254221_ANGLES = ( 0.266, -0.877, -0.623 ) \begintext The actual MER-2_MICROIMAGER_F2 frame orientation provided in the frame definition below was computed using the CAHVOR(E) camera model file, 'MER_CAL_172_SN_105_F_2.cahvor'. According to this model the reference frame, MER-2_IDD_TURRET_HEAD, can be transformed into the camera frame, MER-2_MICROIMAGER_F2, by the following sequence of rotations: first by -0.26622835 degrees about Y, then by 0.87688892 degrees about X, and finally by 0.62270255 degrees about Z. The frame definition below contains the opposite of this transformation because Euler angles specified in it define rotations from the "destination" frame to the "reference" frame. \begindata FRAME_MER-2_MICROIMAGER_F2 = -254222 FRAME_-254222_NAME = 'MER-2_MICROIMAGER_F2' FRAME_-254222_CLASS = 4 FRAME_-254222_CLASS_ID = -254222 FRAME_-254222_CENTER = -254 TKFRAME_-254222_RELATIVE = 'MER-2_IDD_TURRET_HEAD' TKFRAME_-254222_SPEC = 'ANGLES' TKFRAME_-254222_UNITS = 'DEGREES' TKFRAME_-254222_AXES = ( 2, 1, 3 ) TKFRAME_-254222_ANGLES = ( 0.266, -0.877, -0.623 ) \begintext MER-2 HGA Frames ======================================================================== MER-2 Cruise Antenna Frames --------------------------- MER-2 uses three antennas in cruise and EDL -- MGA, Cruise LGA (CLGA), and Backshell LGA (BLGA). The frame for each of the three antennas is defined as follows: * +Z axis is the antenna boresight direction; * +X axis is the antenna pattern clock angle reference axis; * +Y axis completes the right hand frame; * the origin of this frame is at the center of the antenna plate. For all of the antennas, the boresight is cruise or rover -Z, and the clock angle reference axis is arbitrary. Only one rotation is needed because the clock angle reference axis is arbitrary. A rotation of 180 degrees (or -180 degrees - same thing) about the +X axis will co-align the rover frame with the antenna frame. This keeps the rover +X axis as the clock reference axis. The frame definitions below (which express the same rotation for all antennas) implement this orientation. \begindata FRAME_MER-2_MGA = -254500 FRAME_-254500_NAME = 'MER-2_MGA' FRAME_-254500_CLASS = 4 FRAME_-254500_CLASS_ID = -254500 FRAME_-254500_CENTER = -254 TKFRAME_-254500_SPEC = 'ANGLES' TKFRAME_-254500_RELATIVE = 'MER-2_ROVER' TKFRAME_-254500_AXES = ( 1, 2, 3 ) TKFRAME_-254500_ANGLES = ( 180.000, 0.000, 0.000 ) TKFRAME_-254500_UNITS = 'DEGREES' FRAME_MER-2_CLGA = -254510 FRAME_-254510_NAME = 'MER-2_CLGA' FRAME_-254510_CLASS = 4 FRAME_-254510_CLASS_ID = -254510 FRAME_-254510_CENTER = -254 TKFRAME_-254510_SPEC = 'ANGLES' TKFRAME_-254510_RELATIVE = 'MER-2_ROVER' TKFRAME_-254510_AXES = ( 1, 2, 3 ) TKFRAME_-254510_ANGLES = ( 180.000, 0.000, 0.000 ) TKFRAME_-254510_UNITS = 'DEGREES' FRAME_MER-2_BLGA = -254520 FRAME_-254520_NAME = 'MER-2_BLGA' FRAME_-254520_CLASS = 4 FRAME_-254520_CLASS_ID = -254520 FRAME_-254520_CENTER = -254 TKFRAME_-254520_SPEC = 'ANGLES' TKFRAME_-254520_RELATIVE = 'MER-2_ROVER' TKFRAME_-254520_AXES = ( 1, 2, 3 ) TKFRAME_-254520_ANGLES = ( 180.000, 0.000, 0.000 ) TKFRAME_-254520_UNITS = 'DEGREES' \begintext MER-2 UHF Antenna Frame ----------------------- MER-2 UHF antenna frame, MER-2_UHF, is defined as follows: -- +Z axis is along the antenna boresight, nominally coincident with the rover -Z axis; -- +X axis is along the antenna pattern reference axis, nominally coincident with the rover +X axis; -- +Y completes the right hand frame; -- the origin of this frame is at the geometric center of the antenna top surface. This diagram illustrates UHF frame: ^ Zuhf | | /\ PMA HGA | \/ .--. x------> Xuhf / \ #Yuhf || | | # || \ /=. # || `--' || # || ======================= | =o=. | | .' Yr `.__|o====o .===o=== o------> Xr \\ .-. .|. `.-. ##o### | o | | | | | o | IDD `-' `|' `-' V Zr Since UHF antenna is rigidly mounted on the rover body, its frame is defined as fixed offset frame with its orientation given with respect to the rover frame. Nominally a single rotation of 180 degrees about X is needed to align the rover frame with the UHF frame. \begindata FRAME_MER-2_UHF = -254030 FRAME_-254030_NAME = 'MER-2_UHF' FRAME_-254030_CLASS = 4 FRAME_-254030_CLASS_ID = -254030 FRAME_-254030_CENTER = -254 TKFRAME_-254030_RELATIVE = 'MER-2_ROVER' TKFRAME_-254030_SPEC = 'ANGLES' TKFRAME_-254030_UNITS = 'DEGREES' TKFRAME_-254030_AXES = ( 3, 2, 1 ) TKFRAME_-254030_ANGLES = ( 0.000, 0.000, 180.000 ) \begintext MER-2 HGA Frames ---------------- MER-2 HGA base frame is defined as follows: -- +Z axis is nominally parallel to the HGA azimuth gimbal rotation axis, perpendicular to the rover deck and points "up" (i.e. coincident with the rover -Z axis); -- +X axis is in the rover deck plane is nominally rotated 30 degrees off the rover +X axis toward the rover +Y axis; -- +Y axis completes the right hand frame; -- the origin of this frame is located at the intersection of the azimuth gimbal rotation axis and the rover deck plane. This diagram illustrates MER-2 HGA base frame (rover top view): _________ ._. _________ / // \\ \ / @/ Xr \@ \ / // ^ \\ Yr \ / // | \\ \ / Xhgab ^ | \\ \ / // / | \\ \ . ` <. // / x------>\\ .-' . / Yhgab `-. / Zr Yr \\.-' @-' \ / `-. `o \ ,-' \ / // Zhgab (out of page) \ \ / \_____________________/ \ / \ / __@_____________@__ \ / \ / \ / \ / \_/ \ / \_/ \ / \___________/ Zr is into the page. This frame is fixed with respect to the rover frame, therefore it's defined as a fixed offset frame. Nominally two rotations are needed to alight the rover frame with the HGA base frame: first by 180 degrees about X, then by -30 degrees about Z. The frame definition below implements this orientation \begindata FRAME_MER-2_HGA_BASE = -254300 FRAME_-254300_NAME = 'MER-2_HGA_BASE' FRAME_-254300_CLASS = 4 FRAME_-254300_CLASS_ID = -254300 FRAME_-254300_CENTER = -254 TKFRAME_-254300_RELATIVE = 'MER-2_ROVER' TKFRAME_-254300_SPEC = 'ANGLES' TKFRAME_-254300_UNITS = 'DEGREES' TKFRAME_-254300_AXES = ( 2, 1, 3 ) TKFRAME_-254300_ANGLES = ( 0.000, 180.000, 30.000 ) \begintext HGA_ZERO_EL is an auxiliary frame defined to allow storing HGA gimbal rotations in separate CK segments. At "zero" AZ angle it is co-aligned with the HGA_BASE frame. At any other AZ angle it is rotated from the HGA_BASE frame by that angle about Z axis. This frame is defined as a CK-based frame. \begindata FRAME_MER-2_HGA_ZERO_EL = -254301 FRAME_-254301_NAME = 'MER-2_HGA_ZERO_EL' FRAME_-254301_CLASS = 3 FRAME_-254301_CLASS_ID = -254301 FRAME_-254301_CENTER = -254 CK_-254301_SCLK = -254 CK_-254301_SPK = -254301 \begintext MER-2 HGA frame is defined as follows: -- +Z axis is along the HGA boresight; -- +Y axis is along the HGA elevation gimbal rotation axis and point from the HGA dish toward the gimbal; -- +X completes the right hand frame; -- the origin of this frame is at the intersection of the HGA boresight elevation gimbal rotation axis. This diagram illustrates MER-2 HGA frame (HGA assembly back view, zero gimbal position): * * * * * * * Azimuth * * rotation * * axis * * - _ | * * | |----| `. | * +Zhga Xhga *------| | | `.| Elevation * (into x------> * ------------------o------ rotation * page) | *------| | | | `. axis * | * | |----| | | * | +Yhga * - .______|___. * V * | | | * * | Zhgab * * | ^ | * * .------- | ---. * * * * * | | | | | | ------------------------------------. <------o --.----------- Rover deck Xhgab Yhgab (out of page) During normal surface operations the orientation of this frame with respect to the HGA base frame varies and is controlled and telemetered using HGA azimuth and elevation angles. Therefore, this frame is defined as a CK frame with the orientation provided with respect to the HGA base frame. \begindata FRAME_MER-2_HGA = -254310 FRAME_-254310_NAME = 'MER-2_HGA' FRAME_-254310_CLASS = 3 FRAME_-254310_CLASS_ID = -254310 FRAME_-254310_CENTER = -254 CK_-254310_SCLK = -254 CK_-254310_SPK = -254310 \begintext MER-2 Rover LGA Frame --------------------- The MER-2 rover LGA is defined as follows: * +Z axis is the antenna boresight direction; * +X axis is the antenna pattern clock angle reference axis; * +Y axis completes the right hand frame; * the origin of this frame is at the center of the antenna plate. As for the other antennas, the boresight is rover -Z, and the clock angle reference axis is arbitrary. Only one rotation is needed because the clock angle reference axis is arbitrary. A rotation of 180 degrees (or -180 degrees - same thing) about the +X axis will co-align the rover frame with the antenna frame. This keeps the rover +X axis as the clock reference axis. The frame definitions below (which express the same rotation for all antennas) implement this orientation. \begindata FRAME_MER-2_RLGA = -254540 FRAME_-254540_NAME = 'MER-2_RLGA' FRAME_-254540_CLASS = 4 FRAME_-254540_CLASS_ID = -254540 FRAME_-254540_CENTER = -254 TKFRAME_-254540_SPEC = 'ANGLES' TKFRAME_-254540_RELATIVE = 'MER-2_ROVER' TKFRAME_-254540_AXES = ( 1, 2, 3 ) TKFRAME_-254540_ANGLES = ( 180.000, 0.000, 0.000 ) TKFRAME_-254540_UNITS = 'DEGREES' \begintext MER-2 Mobility System Frames ======================================================================== This diagram illustrates the MAS frames: <> MER-2 Mobility System Frames ---------------------------- All MER-2 MAS frames are CK-based frames as their orientation changes constantly as the rover moves along. Description of the MAS frame are <>. \begindata FRAME_MER-2_ROCKER_LEFT = -254410 FRAME_-254410_NAME = 'MER-2_ROCKER_LEFT' FRAME_-254410_CLASS = 3 FRAME_-254410_CLASS_ID = -254410 FRAME_-254410_CENTER = -254 CK_-254410_SCLK = -254 CK_-254410_SPK = -254410 FRAME_MER-2_BOGEY_LEFT = -254411 FRAME_-254411_NAME = 'MER-2_BOGEY_LEFT' FRAME_-254411_CLASS = 3 FRAME_-254411_CLASS_ID = -254411 FRAME_-254411_CENTER = -254 CK_-254411_SCLK = -254 CK_-254411_SPK = -254411 FRAME_MER-2_STRUT_FRONT_LEFT = -254412 FRAME_-254412_NAME = 'MER-2_STRUT_FRONT_LEFT' FRAME_-254412_CLASS = 3 FRAME_-254412_CLASS_ID = -254412 FRAME_-254412_CENTER = -254 CK_-254412_SCLK = -254 CK_-254412_SPK = -254412 FRAME_MER-2_STRUT_REAR_LEFT = -254413 FRAME_-254413_NAME = 'MER-2_STRUT_REAR_LEFT' FRAME_-254413_CLASS = 3 FRAME_-254413_CLASS_ID = -254413 FRAME_-254413_CENTER = -254 CK_-254413_SCLK = -254 CK_-254413_SPK = -254413 FRAME_MER-2_ROCKER_RIGHT = -254420 FRAME_-254420_NAME = 'MER-2_ROCKER_RIGHT' FRAME_-254420_CLASS = 3 FRAME_-254420_CLASS_ID = -254420 FRAME_-254420_CENTER = -254 CK_-254420_SCLK = -254 CK_-254420_SPK = -254420 FRAME_MER-2_BOGEY_RIGHT = -254421 FRAME_-254421_NAME = 'MER-2_BOGEY_RIGHT' FRAME_-254421_CLASS = 3 FRAME_-254421_CLASS_ID = -254421 FRAME_-254421_CENTER = -254 CK_-254421_SCLK = -254 CK_-254421_SPK = -254421 FRAME_MER-2_STRUT_FRONT_RIGHT = -254422 FRAME_-254422_NAME = 'MER-2_STRUT_FRONT_RIGHT' FRAME_-254422_CLASS = 3 FRAME_-254422_CLASS_ID = -254422 FRAME_-254422_CENTER = -254 CK_-254422_SCLK = -254 CK_-254422_SPK = -254422 FRAME_MER-2_STRUT_REAR_RIGHT = -254423 FRAME_-254423_NAME = 'MER-2_STRUT_REAR_RIGHT' FRAME_-254423_CLASS = 3 FRAME_-254423_CLASS_ID = -254423 FRAME_-254423_CENTER = -254 CK_-254423_SCLK = -254 CK_-254423_SPK = -254423 \begintext MER-2 NAIF ID Codes -- Definition Section ======================================================================== This section contains name to NAIF ID mappings for the MER-2. MER-2 rover and landing site names and IDs ------------------------------------------ \begindata NAIF_BODY_NAME += ( 'MER-2' ) NAIF_BODY_CODE += ( -254 ) NAIF_BODY_NAME += ( 'MER-2_LANDING_SITE' ) NAIF_BODY_CODE += ( -254900 ) \begintext MER-2 rover body-mounted instruments names and IDs ---------------------------------------------------- \begindata NAIF_BODY_NAME += ( 'MER-2_FRONT_HAZCAM_LEFT' ) NAIF_BODY_CODE += ( -254011 ) NAIF_BODY_NAME += ( 'MER-2_FRONT_HAZCAM_RIGHT' ) NAIF_BODY_CODE += ( -254012 ) NAIF_BODY_NAME += ( 'MER-2_REAR_HAZCAM_LEFT' ) NAIF_BODY_CODE += ( -254021 ) NAIF_BODY_NAME += ( 'MER-2_REAR_HAZCAM_RIGHT' ) NAIF_BODY_CODE += ( -254022 ) \begintext MER-2 PMA structures and PMA-mounted instrument names and IDs --------------------------------------------------------------- \begindata NAIF_BODY_NAME += ( 'MER-2_PMA_BASE' ) NAIF_BODY_CODE += ( -254100 ) NAIF_BODY_NAME += ( 'MER-2_PMA_HEAD' ) NAIF_BODY_CODE += ( -254110 ) NAIF_BODY_NAME += ( 'MER-2_NAVCAM_LEFT' ) NAIF_BODY_CODE += ( -254111 ) NAIF_BODY_NAME += ( 'MER-2_NAVCAM_RIGHT' ) NAIF_BODY_CODE += ( -254112 ) NAIF_BODY_NAME += ( 'MER-2_PANCAM_LEFT_F1' ) NAIF_BODY_CODE += ( -254121 ) NAIF_BODY_NAME += ( 'MER-2_PANCAM_LEFT_F2' ) NAIF_BODY_CODE += ( -254122 ) NAIF_BODY_NAME += ( 'MER-2_PANCAM_LEFT_F3' ) NAIF_BODY_CODE += ( -254123 ) NAIF_BODY_NAME += ( 'MER-2_PANCAM_LEFT_F4' ) NAIF_BODY_CODE += ( -254124 ) NAIF_BODY_NAME += ( 'MER-2_PANCAM_LEFT_F5' ) NAIF_BODY_CODE += ( -254125 ) NAIF_BODY_NAME += ( 'MER-2_PANCAM_LEFT_F6' ) NAIF_BODY_CODE += ( -254126 ) NAIF_BODY_NAME += ( 'MER-2_PANCAM_LEFT_F7' ) NAIF_BODY_CODE += ( -254127 ) NAIF_BODY_NAME += ( 'MER-2_PANCAM_LEFT_F8' ) NAIF_BODY_CODE += ( -254128 ) NAIF_BODY_NAME += ( 'MER-2_PANCAM_RIGHT_F1' ) NAIF_BODY_CODE += ( -254131 ) NAIF_BODY_NAME += ( 'MER-2_PANCAM_RIGHT_F2' ) NAIF_BODY_CODE += ( -254132 ) NAIF_BODY_NAME += ( 'MER-2_PANCAM_RIGHT_F3' ) NAIF_BODY_CODE += ( -254133 ) NAIF_BODY_NAME += ( 'MER-2_PANCAM_RIGHT_F4' ) NAIF_BODY_CODE += ( -254134 ) NAIF_BODY_NAME += ( 'MER-2_PANCAM_RIGHT_F5' ) NAIF_BODY_CODE += ( -254135 ) NAIF_BODY_NAME += ( 'MER-2_PANCAM_RIGHT_F6' ) NAIF_BODY_CODE += ( -254136 ) NAIF_BODY_NAME += ( 'MER-2_PANCAM_RIGHT_F7' ) NAIF_BODY_CODE += ( -254137 ) NAIF_BODY_NAME += ( 'MER-2_PANCAM_RIGHT_F8' ) NAIF_BODY_CODE += ( -254138 ) NAIF_BODY_NAME += ( 'MER-2_MINITES' ) NAIF_BODY_CODE += ( -254140 ) \begintext MER-2 IDD structures and IDD-mounted instrument names and IDs --------------------------------------------------------------- \begindata NAIF_BODY_NAME += ( 'MER-2_IDD_BASE' ) NAIF_BODY_CODE += ( -254200 ) NAIF_BODY_NAME += ( 'MER-2_IDD_SHOULDER_AZ' ) NAIF_BODY_CODE += ( -254201 ) NAIF_BODY_NAME += ( 'MER-2_IDD_SHOULDER_EL' ) NAIF_BODY_CODE += ( -254202 ) NAIF_BODY_NAME += ( 'MER-2_IDD_ELBOW' ) NAIF_BODY_CODE += ( -254203 ) NAIF_BODY_NAME += ( 'MER-2_IDD_WRIST' ) NAIF_BODY_CODE += ( -254204 ) NAIF_BODY_NAME += ( 'MER-2_IDD_TURRET' ) NAIF_BODY_CODE += ( -254205 ) NAIF_BODY_NAME += ( 'MER-2_IDD_TURRET_HEAD' ) NAIF_BODY_CODE += ( -254206 ) NAIF_BODY_NAME += ( 'MER-2_APXS' ) NAIF_BODY_CODE += ( -254210 ) NAIF_BODY_NAME += ( 'MER-2_MICROIMAGER' ) NAIF_BODY_CODE += ( -254220 ) NAIF_BODY_NAME += ( 'MER-2_MICROIMAGER_F1' ) NAIF_BODY_CODE += ( -254221 ) NAIF_BODY_NAME += ( 'MER-2_MICROIMAGER_F2' ) NAIF_BODY_CODE += ( -254222 ) NAIF_BODY_NAME += ( 'MER-2_RAT' ) NAIF_BODY_CODE += ( -254230 ) NAIF_BODY_NAME += ( 'MER-2_MOSSBAUER' ) NAIF_BODY_CODE += ( -254240 ) \begintext MER-2 antenna names and IDs --------------------------- \begindata NAIF_BODY_NAME += ( 'MER-2_MGA' ) NAIF_BODY_CODE += ( -254500 ) NAIF_BODY_NAME += ( 'MER-2_CLGA' ) NAIF_BODY_CODE += ( -254510 ) NAIF_BODY_NAME += ( 'MER-2_BLGA' ) NAIF_BODY_CODE += ( -254520 ) NAIF_BODY_NAME += ( 'MER-2_UHF' ) NAIF_BODY_CODE += ( -254030 ) NAIF_BODY_NAME += ( 'MER-2_HGA_BASE' ) NAIF_BODY_CODE += ( -254300 ) NAIF_BODY_NAME += ( 'MER-2_HGA' ) NAIF_BODY_CODE += ( -254310 ) NAIF_BODY_NAME += ( 'MER-2_RLGA' ) NAIF_BODY_CODE += ( -254540 ) \begintext MER-2 mobility system components names and IDs ---------------------------------------------- \begindata NAIF_BODY_NAME += ( 'MER-2_ROCKER_LEFT' ) NAIF_BODY_CODE += ( -254410 ) NAIF_BODY_NAME += ( 'MER-2_BOGEY_LEFT' ) NAIF_BODY_CODE += ( -254411 ) NAIF_BODY_NAME += ( 'MER-2_STRUT_FRONT_LEFT' ) NAIF_BODY_CODE += ( -254412 ) NAIF_BODY_NAME += ( 'MER-2_STRUT_REAR_LEFT' ) NAIF_BODY_CODE += ( -254413 ) NAIF_BODY_NAME += ( 'MER-2_ROCKER_RIGHT' ) NAIF_BODY_CODE += ( -254420 ) NAIF_BODY_NAME += ( 'MER-2_BOGEY_RIGHT' ) NAIF_BODY_CODE += ( -254421 ) NAIF_BODY_NAME += ( 'MER-2_STRUT_FRONT_RIGHT' ) NAIF_BODY_CODE += ( -254422 ) NAIF_BODY_NAME += ( 'MER-2_STRUT_REAR_RIGHT' ) NAIF_BODY_CODE += ( -254423 ) \begintext MER-2 Site IDs -------------- \begindata NAIF_BODY_NAME += ( 'MER-2_SITE_1' ) NAIF_BODY_CODE += ( -254901 ) NAIF_BODY_NAME += ( 'MER-2_SITE_2' ) NAIF_BODY_CODE += ( -254902 ) NAIF_BODY_NAME += ( 'MER-2_SITE_3' ) NAIF_BODY_CODE += ( -254903 ) NAIF_BODY_NAME += ( 'MER-2_SITE_4' ) NAIF_BODY_CODE += ( -254904 ) NAIF_BODY_NAME += ( 'MER-2_SITE_5' ) NAIF_BODY_CODE += ( -254905 ) NAIF_BODY_NAME += ( 'MER-2_SITE_6' ) NAIF_BODY_CODE += ( -254906 ) NAIF_BODY_NAME += ( 'MER-2_SITE_7' ) NAIF_BODY_CODE += ( -254907 ) NAIF_BODY_NAME += ( 'MER-2_SITE_8' ) NAIF_BODY_CODE += ( -254908 ) NAIF_BODY_NAME += ( 'MER-2_SITE_9' ) NAIF_BODY_CODE += ( -254909 ) NAIF_BODY_NAME += ( 'MER-2_SITE_10' ) NAIF_BODY_CODE += ( -254910 ) NAIF_BODY_NAME += ( 'MER-2_SITE_11' ) NAIF_BODY_CODE += ( -254911 ) NAIF_BODY_NAME += ( 'MER-2_SITE_12' ) NAIF_BODY_CODE += ( -254912 ) NAIF_BODY_NAME += ( 'MER-2_SITE_13' ) NAIF_BODY_CODE += ( -254913 ) NAIF_BODY_NAME += ( 'MER-2_SITE_14' ) NAIF_BODY_CODE += ( -254914 ) NAIF_BODY_NAME += ( 'MER-2_SITE_15' ) NAIF_BODY_CODE += ( -254915 ) NAIF_BODY_NAME += ( 'MER-2_SITE_16' ) NAIF_BODY_CODE += ( -254916 ) NAIF_BODY_NAME += ( 'MER-2_SITE_17' ) NAIF_BODY_CODE += ( -254917 ) NAIF_BODY_NAME += ( 'MER-2_SITE_18' ) NAIF_BODY_CODE += ( -254918 ) NAIF_BODY_NAME += ( 'MER-2_SITE_19' ) NAIF_BODY_CODE += ( -254919 ) NAIF_BODY_NAME += ( 'MER-2_SITE_20' ) NAIF_BODY_CODE += ( -254920 ) NAIF_BODY_NAME += ( 'MER-2_SITE_21' ) NAIF_BODY_CODE += ( -254921 ) NAIF_BODY_NAME += ( 'MER-2_SITE_22' ) NAIF_BODY_CODE += ( -254922 ) NAIF_BODY_NAME += ( 'MER-2_SITE_23' ) NAIF_BODY_CODE += ( -254923 ) NAIF_BODY_NAME += ( 'MER-2_SITE_24' ) NAIF_BODY_CODE += ( -254924 ) NAIF_BODY_NAME += ( 'MER-2_SITE_25' ) NAIF_BODY_CODE += ( -254925 ) NAIF_BODY_NAME += ( 'MER-2_SITE_26' ) NAIF_BODY_CODE += ( -254926 ) NAIF_BODY_NAME += ( 'MER-2_SITE_27' ) NAIF_BODY_CODE += ( -254927 ) NAIF_BODY_NAME += ( 'MER-2_SITE_28' ) NAIF_BODY_CODE += ( -254928 ) NAIF_BODY_NAME += ( 'MER-2_SITE_29' ) NAIF_BODY_CODE += ( -254929 ) NAIF_BODY_NAME += ( 'MER-2_SITE_30' ) NAIF_BODY_CODE += ( -254930 ) NAIF_BODY_NAME += ( 'MER-2_SITE_31' ) NAIF_BODY_CODE += ( -254931 ) NAIF_BODY_NAME += ( 'MER-2_SITE_32' ) NAIF_BODY_CODE += ( -254932 ) NAIF_BODY_NAME += ( 'MER-2_SITE_33' ) NAIF_BODY_CODE += ( -254933 ) NAIF_BODY_NAME += ( 'MER-2_SITE_34' ) NAIF_BODY_CODE += ( -254934 ) NAIF_BODY_NAME += ( 'MER-2_SITE_35' ) NAIF_BODY_CODE += ( -254935 ) NAIF_BODY_NAME += ( 'MER-2_SITE_36' ) NAIF_BODY_CODE += ( -254936 ) NAIF_BODY_NAME += ( 'MER-2_SITE_37' ) NAIF_BODY_CODE += ( -254937 ) NAIF_BODY_NAME += ( 'MER-2_SITE_38' ) NAIF_BODY_CODE += ( -254938 ) NAIF_BODY_NAME += ( 'MER-2_SITE_39' ) NAIF_BODY_CODE += ( -254939 ) NAIF_BODY_NAME += ( 'MER-2_SITE_40' ) NAIF_BODY_CODE += ( -254940 ) NAIF_BODY_NAME += ( 'MER-2_SITE_41' ) NAIF_BODY_CODE += ( -254941 ) NAIF_BODY_NAME += ( 'MER-2_SITE_42' ) NAIF_BODY_CODE += ( -254942 ) NAIF_BODY_NAME += ( 'MER-2_SITE_43' ) NAIF_BODY_CODE += ( -254943 ) NAIF_BODY_NAME += ( 'MER-2_SITE_44' ) NAIF_BODY_CODE += ( -254944 ) NAIF_BODY_NAME += ( 'MER-2_SITE_45' ) NAIF_BODY_CODE += ( -254945 ) NAIF_BODY_NAME += ( 'MER-2_SITE_46' ) NAIF_BODY_CODE += ( -254946 ) NAIF_BODY_NAME += ( 'MER-2_SITE_47' ) NAIF_BODY_CODE += ( -254947 ) NAIF_BODY_NAME += ( 'MER-2_SITE_48' ) NAIF_BODY_CODE += ( -254948 ) NAIF_BODY_NAME += ( 'MER-2_SITE_49' ) NAIF_BODY_CODE += ( -254949 ) NAIF_BODY_NAME += ( 'MER-2_SITE_50' ) NAIF_BODY_CODE += ( -254950 ) NAIF_BODY_NAME += ( 'MER-2_SITE_51' ) NAIF_BODY_CODE += ( -254951 ) NAIF_BODY_NAME += ( 'MER-2_SITE_52' ) NAIF_BODY_CODE += ( -254952 ) NAIF_BODY_NAME += ( 'MER-2_SITE_53' ) NAIF_BODY_CODE += ( -254953 ) NAIF_BODY_NAME += ( 'MER-2_SITE_54' ) NAIF_BODY_CODE += ( -254954 ) NAIF_BODY_NAME += ( 'MER-2_SITE_55' ) NAIF_BODY_CODE += ( -254955 ) NAIF_BODY_NAME += ( 'MER-2_SITE_56' ) NAIF_BODY_CODE += ( -254956 ) NAIF_BODY_NAME += ( 'MER-2_SITE_57' ) NAIF_BODY_CODE += ( -254957 ) NAIF_BODY_NAME += ( 'MER-2_SITE_58' ) NAIF_BODY_CODE += ( -254958 ) NAIF_BODY_NAME += ( 'MER-2_SITE_59' ) NAIF_BODY_CODE += ( -254959 ) NAIF_BODY_NAME += ( 'MER-2_SITE_60' ) NAIF_BODY_CODE += ( -254960 ) NAIF_BODY_NAME += ( 'MER-2_SITE_61' ) NAIF_BODY_CODE += ( -254961 ) NAIF_BODY_NAME += ( 'MER-2_SITE_62' ) NAIF_BODY_CODE += ( -254962 ) NAIF_BODY_NAME += ( 'MER-2_SITE_63' ) NAIF_BODY_CODE += ( -254963 ) NAIF_BODY_NAME += ( 'MER-2_SITE_64' ) NAIF_BODY_CODE += ( -254964 ) NAIF_BODY_NAME += ( 'MER-2_SITE_65' ) NAIF_BODY_CODE += ( -254965 ) NAIF_BODY_NAME += ( 'MER-2_SITE_66' ) NAIF_BODY_CODE += ( -254966 ) NAIF_BODY_NAME += ( 'MER-2_SITE_67' ) NAIF_BODY_CODE += ( -254967 ) NAIF_BODY_NAME += ( 'MER-2_SITE_68' ) NAIF_BODY_CODE += ( -254968 ) NAIF_BODY_NAME += ( 'MER-2_SITE_69' ) NAIF_BODY_CODE += ( -254969 ) NAIF_BODY_NAME += ( 'MER-2_SITE_70' ) NAIF_BODY_CODE += ( -254970 ) NAIF_BODY_NAME += ( 'MER-2_SITE_71' ) NAIF_BODY_CODE += ( -254971 ) NAIF_BODY_NAME += ( 'MER-2_SITE_72' ) NAIF_BODY_CODE += ( -254972 ) NAIF_BODY_NAME += ( 'MER-2_SITE_73' ) NAIF_BODY_CODE += ( -254973 ) NAIF_BODY_NAME += ( 'MER-2_SITE_74' ) NAIF_BODY_CODE += ( -254974 ) NAIF_BODY_NAME += ( 'MER-2_SITE_75' ) NAIF_BODY_CODE += ( -254975 ) NAIF_BODY_NAME += ( 'MER-2_SITE_76' ) NAIF_BODY_CODE += ( -254976 ) NAIF_BODY_NAME += ( 'MER-2_SITE_77' ) NAIF_BODY_CODE += ( -254977 ) NAIF_BODY_NAME += ( 'MER-2_SITE_78' ) NAIF_BODY_CODE += ( -254978 ) NAIF_BODY_NAME += ( 'MER-2_SITE_79' ) NAIF_BODY_CODE += ( -254979 ) NAIF_BODY_NAME += ( 'MER-2_SITE_80' ) NAIF_BODY_CODE += ( -254980 ) NAIF_BODY_NAME += ( 'MER-2_SITE_81' ) NAIF_BODY_CODE += ( -254981 ) NAIF_BODY_NAME += ( 'MER-2_SITE_82' ) NAIF_BODY_CODE += ( -254982 ) NAIF_BODY_NAME += ( 'MER-2_SITE_83' ) NAIF_BODY_CODE += ( -254983 ) NAIF_BODY_NAME += ( 'MER-2_SITE_84' ) NAIF_BODY_CODE += ( -254984 ) NAIF_BODY_NAME += ( 'MER-2_SITE_85' ) NAIF_BODY_CODE += ( -254985 ) NAIF_BODY_NAME += ( 'MER-2_SITE_86' ) NAIF_BODY_CODE += ( -254986 ) NAIF_BODY_NAME += ( 'MER-2_SITE_87' ) NAIF_BODY_CODE += ( -254987 ) NAIF_BODY_NAME += ( 'MER-2_SITE_88' ) NAIF_BODY_CODE += ( -254988 ) NAIF_BODY_NAME += ( 'MER-2_SITE_89' ) NAIF_BODY_CODE += ( -254989 ) NAIF_BODY_NAME += ( 'MER-2_SITE_90' ) NAIF_BODY_CODE += ( -254990 ) NAIF_BODY_NAME += ( 'MER-2_SITE_91' ) NAIF_BODY_CODE += ( -254991 ) NAIF_BODY_NAME += ( 'MER-2_SITE_92' ) NAIF_BODY_CODE += ( -254992 ) NAIF_BODY_NAME += ( 'MER-2_SITE_93' ) NAIF_BODY_CODE += ( -254993 ) NAIF_BODY_NAME += ( 'MER-2_SITE_94' ) NAIF_BODY_CODE += ( -254994 ) NAIF_BODY_NAME += ( 'MER-2_SITE_95' ) NAIF_BODY_CODE += ( -254995 ) NAIF_BODY_NAME += ( 'MER-2_SITE_96' ) NAIF_BODY_CODE += ( -254996 ) NAIF_BODY_NAME += ( 'MER-2_SITE_97' ) NAIF_BODY_CODE += ( -254997 ) NAIF_BODY_NAME += ( 'MER-2_SITE_98' ) NAIF_BODY_CODE += ( -254998 ) NAIF_BODY_NAME += ( 'MER-2_SITE_99' ) NAIF_BODY_CODE += ( -254999 ) \begintext