Mars Reconnaissance Orbiter

Software Interface Specification

 


Interface Title:  SPICE Frames Kernel (FK)

Mission:  MRO                                                                           Date:12/17/03

Module ID:  SIS-NAF008-MRO                                                   

Module Type (REFerence Only or MISsion-specific info included):  REF

 


Reference Module ID:  NAIF Document No. 372                  Date: 5/25/00

 


Approvals

Generating Subsystem:                   

 

Mission Navigation Subsystem/NAIF Element           

Charles Acton           _______________________________________________

                                                                                          Cog E                                                                    Date

 

 

Receiving Subsystems:

 

APSS 

Curt Eggemeyer           _______________________________________________

                                                                                          Cog E                                                                    Date

MNS 

Tung-Han You           _______________________________________________

                                                                                          Cog E                                                                    Date

SEPA

Mike Haggard           _______________________________________________

                                                                                          Cog E                                                                    Date

DMAS                                                              

Young Lee           _______________________________________________

                                                                                          Cog E                                                                    Date

DACS

Mike Levesque           _______________________________________________

                                                                                          Cog E                                                                    Date

POSS 

Daniel Wenkert           _______________________________________________

                                                                                          Cog E                                                                    Date

 

GDS System Engineer:

 

Ground Data System (GDS)

Magdi Carlton           _______________________________________________

                                                                        GDS SE                                                             Date


 

 

 

 

Multimission Software Interface Specification (SIS)

 

 

 

 

 

 

 

 

SPICE

Frames Kernel

 

FK

 

 

 

 

NAIF Document No. 372

Version 1.0

 

 

 

 

 


Prepared by:  C. Acton

 

 

Navigation and Ancillary Information Facility (NAIF)

Jet Propulsion Laboratory

National Aeronautics and Space Administration

 

 

 

PURPOSE:  This SIS describes the format and content of SPICE Frames Kernel (FK) file. The FK file is used to establish the relationships between reference frames used within the SPICE system. It also describes and gives examples of how to use NAIF Toolkit subroutines to access and use the data in a SPICE FK file.

 


 

CHANGE LOG

 

 

Version

Date

Page Nos.

Reason

1.0

25 May 2000

All

New multimission version.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

List of Acronyms

 

 

ANSI                           American National Standards Institute

ASCII                          American Standard Code for Information Interchange

CCSDS                        Consultative Committee on Space Data Standards

CK                               SPICE C-kernel

ET                               Ephemeris Time

FK                               SPICE Frames Kernel

FTP                             File Transfer Protocol

FTS                             SFOC File Transfer Service

JPL                              Caltech/Jet Propulsion Laboratory

MGSO                         Multimission Ground Systems Office

NAIF                           Navigation and Ancillary Information Facility

PDB                            Project Data Base

PDS                             Planetary Data System

SFDU                          Standard Formatted Data Unit

SIS                              Software Interface Specification

SPICE                         S-, P-, I-, C- and E-kernels; the principal logical data components of a                              particular NASA ancillary information system

TDB                            Barycentric Dynamical Time

TMOD                        Telecommunications and Mission Operations Directorate

VMS                           Digital Equipment Corporation's Virtual Memory Operating System

 


Section 1  

General Description

 

 

1.1                         Purpose of Document

 

This Software Interface Specification (SIS) describes the contents and structure of a SPICE Frames Kernel (FK) file.

 

 

1.2                         Scope

 

This is a multimission SIS, applicable for all flight projects.

 

 

1.3                         Reference Documents

 

No.

NAIF Document ID

Title

1.

349

Frames Required Reading

2.

318

Kernel Required Reading

3.

168

SPK Required Reading

4.

174

CK Required Reading

 

These reference documents are included in each delivery of the SPICE Toolkit. Also available are two SPICE tutorials on frames, available from the NAIF server:

 

ftp://naif.jpl.nasa.gov/pub/naif/toolkit_docs/Tutorials/

 

 

1.4                         Functional Description

 

A frames kernel contains specifications for the definition of one or more reference frames intended to be used by an application built upon SPICE system components. Frame specifications provided to an application at run time using an FK file can be used within the SPICE components that utilize a reference frame specification as a parameter, such as the SPK readers (SPKEZR or SPKEZ) or the transformation matrix routines SXFORM and PXFORM.

In the case of fixed offset frames (TK Frames) a frames kernel file contains actual data used in defining a reference frame. In all other cases the FK provides pointers to other SPICE kernels–PcK, CK or SPK files–used to construct the frame.

 

 

1.4.1                      Data Source, Destination  and Transfer Method

 

Frames Kernels are made available to flight projects through whatever mechanism is used for providing access to SPICE products, such as a Project Database (PDB), a File Interchange System (FIS) or a SPICE Server.

 

 

1.4.2                      Labeling and Identification

 

FK files may include an internal label section appearing at the beginning of the file. The information in this label section might be used in the construction of Planetary Data System (PDS) label or SFDU K-Header metadata.

1.4.3                      Assumptions and Constraints

 

Contents of a FK file must adhere to SPICE text kernel specifications as described in SPICE document Kernel Required Reading (Reference 2).


Section 2

Data Object Definition

 

 

2.1                         Structure and Organization

 

A frames kernel is a simple ASCII file containing data sections and descriptive text sections. The contents and format follow the FK specifications described in the SPICE document Frames Required Reading (Reference 1).

 

Text sections of an FK are used to describe the data. They are preceded by the token:

 

\begintext

 

If it appears first in the file, before any data, the first text section does not need this delimiter—it is  interpreted as a text section by default. The initial text section may contain labels (metadata) providing provenance for the file. This labeling practice is highly recommended by NAIF, although it is not a SPICE requirement. Such metadata could utilize the same "keyword = value" syntax used in data sections of the FK. In general the text sections are not restricted to a particular format other than each line must not exceed 79 characters.

 

 

All data sections start with the begin data delimiter,

 

\begindata

 

Data are provided using a "keyword = value" syntax. The data sections are parsed by SPICE kernel file readers and so must adhere to the format specified in the NAIF Document Kernel Required Reading (Reference 2).

 

 

2.2                         Data Format and Definition

 

 

2.2.1                      Metadata Description

 

While not a requirement, any metadata labels usually appear first in the file. Below is an example label section.

 

\begintext

 

mission_name=                    CASSINI

spacecraft_name=                 CASSINI_ORBITER

MISSION_PHASE_NAME=              "LAUNCH", "CRUISE", "SATURN_ORBIT"

data_set_id=                     "CAS-S-SPICE-6-FK-V1.0"

product_id=                      <unique ID>

product_creation_time=           <yyyy-mm-ddThh:mm:ss.ttt>

TARGET_NAME=                     SATURN

producer_id=                     <name>

NOTE=                            <"additional information">

 

 

 

Following any labels, but still within the first text section, is usually found an introduction to the frames kernel. This may include version and date, references, author and general comments about using the FK.

 

 

2.2.2                      Data Description

 

The SPICE frames system allows specification of several types of reference frames, such as fixed offset frames, and frames based on SPICE Planetary Constants Kernel (PCK) data or on C-kernel (CK) data. Descriptions of these frame types and specification of the defining information needed for each type are found in the SPICE document Frames Required Reading (Reference 1).

 

FK assignments use a KEYWORD = VALUE syntax. Each assignment must appear on a separate line and each line must not exceed 79 characters.

 

 

2.2.2.1 Example of a TK Frame

 

An example of a Text Kernel (TK) frame specification, used for fixed offset frames, and where the fixed mounting alignment data are provided within the FK file, is shown below.

 

 

\begintext

 

 

ISS Frames

----------------------------------------------------------

 

   The Narrow Angle Camera (NAC) and Wide Angle Camera (WAC) are mounted on

   the remote sensing pallet on the +X side of the Cassini spacecraft, and

   nominally directed along the -Y axis of the AACS body frame.

 

   Note the angles in the frame definitions are specified for the "from

   antenna to (relative to) base frame" transformation.

 

 

Imaging Science Subsystem Narrow Angle Camera (ISS_NAC)

 

   The ISS NAC points nominally along the spacecraft -Y axis. The following

   frame definition encapsulates this nominal frame.

 

   From [8]:

 

   ``The Narrow Angle Camera (NAC) detector is a CCD. Its coordinate system is

   defined according to the geometry of the detector. The narrow angle

   coordinate system is defined in the same manner as the SRU coordinate

   systems defined above and the four central pixels of center of the full CCD

   are selected for the definition of the origin of the coordinate system.

 

   The Narrow Angle Camera is the primary instrument on the Remote Sensing

   Pallet (RSP). AACS is responsible for providing pointing knowledge of the

   boresight vector of this instrument. All other RSP instruments use the

   pointing provided to the NAC as their reference for determining their

   pointing.''

 


           Nominal Frame Definition:

 

           FRAME_CASSINI_ISS_NAC    = -82360

           FRAME_-82360_NAME        = 'CASSINI_ISS_NAC'

           FRAME_-82360_CLASS       = 4

           FRAME_-82360_CLASS_ID    = -82360

           FRAME_-82360_CENTER      = -82

           TKFRAME_-82360_SPEC      = 'ANGLES'

           TKFRAME_-82360_RELATIVE  = 'CASSINI_SC_COORD'

           TKFRAME_-82360_ANGLES    = (   -90.0,     0.0,     90.0 )

           TKFRAME_-82360_AXES      = (     1,       2,        3   )

           TKFRAME_-82360_UNITS     = 'DEGREES'

 

 

   [6] describes the in-flight calibration of the ISS that was the result of

   the CICLOPS (Cassini Imaging Central Laboratory for Operations) analysis of

   8 NAC images that were taken during ICO (Instrument Checkout). The rotation

   matrix that takes vectors represented in the ISS_NAC frame into the

   spacecraft frame follows:

 

           [     ]    [            ]  [             ]  [           ]

           [ ROT ]  = [ -89.892082 ]  [ 0.047029483 ]  [ 90.024236 ]

           [     ]    [            ]  [             ]  [           ]

                                    X                Y              Z

 

           where [x]i  represents the rotation matrix of a given angle x about

axis i.

 

   The angles were taken directly from [6].

 

           \begindata

 

           FRAME_CASSINI_ISS_NAC    = -82360

           FRAME_-82360_NAME        = 'CASSINI_ISS_NAC'

           FRAME_-82360_CLASS       = 4

           FRAME_-82360_CLASS_ID    = -82360

           FRAME_-82360_CENTER      = -82

           TKFRAME_-82360_SPEC      = 'ANGLES'

           TKFRAME_-82360_RELATIVE  = 'CASSINI_SC_COORD'

           TKFRAME_-82360_ANGLES    = ( -89.892082,  0.047029483,  90.024236 )

           TKFRAME_-82360_AXES      = (   1,         2,             3        )

           TKFRAME_-82360_UNITS     = 'DEGREES'

 

 

 


2.2.2.2 Example of a CK Frame

 

A CK frame is one that is defined by a SPICE C-kernel. An example of a CK frame specification is shown below.

 

\begintext

 

 

CAPS Frames

 

   The CAPS frame is currently listed as a CK based frame.

 

           \begindata

 

           FRAME_CASSINI_CAPS       = -82820

           FRAME_-82820_NAME        = 'CASSINI_CAPS'

           FRAME_-82820_CLASS       = 3

           FRAME_-82820_CLASS_ID    = -82820

           FRAME_-82820_CENTER      = -82

           CK_-82820_SCLK           = -82

           CK_-82820_SPK            = -82


 

Section 3

Using Frames Kernel Data

 

 

3.1                         Loading FK Data Into a Program

 

All frames specification information contained in a Frames kernel are loaded into the memory space of an application program in the initialization stage of the program. This is accomplished using the SPICE Toolkit's text kernel loading mechanism:

 

     CALL FURNSH ("<FK file name>")

     furnsh_c ("<fk file name>")

 

 

3.2                         Using FK Data

 

Any reference frames defined in a frames kernel can be used throughout a SPICE-based application program that use SPICE routines in which a reference frame is an input or output argument. Examples of such routines are:

 

  SXFORM

  PXFORM

  SPKEZR

  CKGPAV

 

The reader is referred to descriptions of how to use these routines found in the referenced SPICE tutorials on the frames kernels, to reference document numbers 1,3 and 4, and to the source code headers for these routines.