Austrian Academy of Sciences
    Space Research Institute
Department of Experimental Space Research




                  ROSETTA-MIDAS
       To Planetary Science Archive Interface Control
                        Document

                    MID-IWF-TN-0087

                         Issue 1.4

                        1 April 2016




                                          ______________________________
                                            Prepared by: Harald Jeszenszky

                                              __________________________
                                                 Approved by: Mark Bentley
                                                                   Document No.     :   MID-IWF-TN-0087
                      ROSETTA-MIDAS to PSA                         Issue/Rev. No.   :   1.4
                      Interface Control Document                   Date             :   1 April 2016
                                                                   Page             :   2


                               Distribution List



Recipient                         Organisation                          Recipient
                                                                   Document No.     :   MID-IWF-TN-0087
                      ROSETTA-MIDAS to PSA                         Issue/Rev. No.   :   1.4
                      Interface Control Document                   Date             :   1 April 2016
                                                                   Page             :   3


                                        Change Log



           Date                       Sections Changed                Reasons for Change

7 November 2003             All                                      First draft

6 February 2006             All                                      Updated draft

6 November 2006             All                                      First formal release

21 February 2008            All                                      Peer review update

27 October 2008                                                      Minor updates

1 February 2013             All                                      2nd peer review update

1 April 2016                All                                      3rd peer review update
                                                                   Document No.     :   MID-IWF-TN-0087
                      ROSETTA-MIDAS to PSA                         Issue/Rev. No.   :   1.4
                      Interface Control Document                   Date             :   1 April 2016
                                                                   Page             :   4


                              ITEMS


Section                               Description
                                                                   Document No.     :   MID-IWF-TN-0087
                      ROSETTA-MIDAS to PSA                         Issue/Rev. No.   :   1.4
                      Interface Control Document                   Date             :   1 April 2016
                                                                   Page             :   5


                                          Table Of Contents



1     Introduction _________________________________________________________________________ 7
    1.1   Purpose and Scope ________________________________________________________________ 7
    1.2     Archiving Authorities __________________________________________________________ 7
       1.2.1    ESA's Planetary Science Archive (PSA)_______________________________________ 7
    1.3   Contents _________________________________________________________________________ 7
    1.4   Intended Readership ______________________________________________________________ 8
    1.5   Applicable Documents _____________________________________________________________ 8
    1.6   Relationships to Other Interfaces ________________________________________________ 8
    1.7   Acronyms and Abbreviations _______________________________________________________ 8
    1.8   Contact Names and Addresses ______________________________________________________ 9
2     Overview of Instrument Design, Data Handling Process and Product Generation _________ 10
    2.1   Scientific Objectives ___________________________________________________________ 10
    2.2   AFM Operating Modes _____________________________________________________________ 11
    2.3   Operating Principle _____________________________________________________________ 12
    2.4   Data Handling Process ___________________________________________________________ 13
    2.5     Overview of Data Products _____________________________________________________ 13
       2.5.1    Pre-Flight Data Products __________________________________________________ 16
       2.5.2    Sub-System Tests __________________________________________________________ 17
       2.5.3    Instrument Calibrations ___________________________________________________ 17
       2.5.4    Other Files written during Calibration ____________________________________ 18
       2.5.5    In-Flight Data Products ___________________________________________________ 18
       2.5.6    Software __________________________________________________________________ 19
       2.5.7    Documentation _____________________________________________________________ 22
       2.5.8    Derived and other Data Products____________________________________________ 22
       2.5.9    Ancillary Data Usage ______________________________________________________ 22
3     Archive Format and Content __________________________________________________________ 23
    3.1     Format and Conventions ________________________________________________________ 23
       3.1.1    Deliveries and Archive Volume Format ______________________________________ 23
       3.1.2    Data Set ID Formation _____________________________________________________ 23
       3.1.3    Data Set Name Formation ___________________________________________________ 23
       3.1.4    Data Directory Naming Convention __________________________________________ 23
       3.1.5    File Naming Convention ____________________________________________________ 24
    3.2     Standards Used in Data Product Generation _____________________________________ 24
       3.2.1    PDS Standards _____________________________________________________________ 24
       3.2.2    Time Standards ____________________________________________________________ 24
       3.2.3    Reference Systems__________________________________________________________ 25
       3.2.4    Other Applicable Standards_________________________________________________ 25
    3.3   Data Validation _________________________________________________________________ 26
    3.4     Content _______________________________________________________________________ 28
       3.4.1    Volume Set / Data Set _____________________________________________________ 28
       3.4.2    Directories _______________________________________________________________ 28
4     Detailed Interface Specifications ___________________________________________________ 32
    4.1     Structure and Organization Overview ___________________________________________ 32
       4.1.1    Data Processing Diagram ___________________________________________________ 32
       4.1.2    Data Product Preparation __________________________________________________ 33
    4.2     Data Sets, Definition and Content _____________________________________________ 34
       4.2.1    Data Set Production________________________________________________________ 34
       4.2.2    Instrument Mode Definition ________________________________________________ 35
       4.2.3    Data Quality Definition ___________________________________________________ 35
       4.2.4    Geometry Information ______________________________________________________ 35
       4.2.5    Mission Specific Keywords _________________________________________________ 36
    4.3     Data Product Design ___________________________________________________________ 38
       4.3.1    Data Product Design - Standard Housekeeping Data __________________________ 38
       4.3.2    Data Product Design - Extended Housekeeping Data___________________________ 43
       4.3.3    Data Product Design - Frequency Scan Data _________________________________ 77
       4.3.4    Data Product Design - Single Point Approach Data __________________________ 82
       4.3.5    Data Product Design - Single Point Sampling Data __________________________ 88
       4.3.6    Data Product Design - Line Scan Data ______________________________________ 94
       4.3.7    Data Product Design - Image Scan Data _____________________________________ 99
       4.3.8    Data Product Design - Feature Vector Data ________________________________ 101
       4.3.9    Data Product Design - Event Data _________________________________________ 107
       4.3.10 Data Product Design - Cantilever Utilisation History Data __________________ 109
       4.3.11 Data Product Design - Target Utilisation History Data ______________________ 112
5     Appendix: Available Software to read PDS files _____________________________________ 114
    5.1     Program Description __________________________________________________________ 115
       5.1.1    Program Installation _____________________________________________________ 115
       5.1.2    Starting the Program _____________________________________________________ 115
       5.1.3    Navigating the Data Set __________________________________________________ 115
       5.1.4    Data Display _____________________________________________________________ 115
    5.2     Program Source Files _________________________________________________________ 116
       5.2.1    MIDAS Data Set Browser ___________________________________________________ 116
       5.2.2    Small Bodies Node (SBN) PDS Library ______________________________________ 117
6     Appendix: Example of Directory Listing of Data Set X _______________________________ 118

                                                                   Document No.     :   MID-IWF-TN-0087
                      ROSETTA-MIDAS to PSA                         Issue/Rev. No.   :   1.4
                      Interface Control Document                   Date             :   1 April 2016
                                                                   Page             :   7



1 Introduction

1.1     Purpose and Scope

        The purpose of this EAICD (Experimenter to (Science) Archive Interface Control Document) is
        twofold. At first, it provides users of the MIDAS instrument with a detailed description of the
        product and a description and the methods by which it is generated, including data sources and
        destinations. Secondly, it is the official interface between the MIDAS instrument team and the
        archiving authority.


1.2     Archiving Authorities

        The Planetary Data System Standard is used as an archiving standard by
        *    NASA for U.S. planetary missions, implemented by PDS
        *    ESA for European planetary missions, implemented by the Research and Scientific Support
            Department (RSSD) of ESA


1.2.1      ESA's Planetary Science Archive (PSA)

        ESA implements an online science archive, the PSA,
        *    to support and ease data ingestion
        *    to offer additional services to the scientific user community and science operations teams as
            e.g.
             o   search queries that allow searches across instruments, missions and scientific
                 disciplines
             o   several data delivery options as
                      direct download of data products, linked files and data sets
                      ftp download of data products, linked files and data sets
                 

        The PSA aims for online ingestion of logical archive volumes and will offer the creation of
        physical archive volumes on request.



1.3     Contents

        This document describes the data flow of the MIDAS instrument on ROSETTA from the S/C until
        insertion into the PSA for ESA. It includes information on how data were processed, formatted,
        labelled and uniquely identified. The document discusses general naming schemes for data
        volumes, data sets, data and label files. Standards used to generate the product are explained.
        Software that may be used to access the product is explained further on.
        The design of the data set structure and the data product is given. Examples of these are given
        in the appendix.
                                                             Document No.     :   MID-IWF-TN-0087
                    ROSETTA-MIDAS to PSA                     Issue/Rev. No.   :   1.4
                    Interface Control Document               Date             :   1 April 2016
                                                             Page             :   8




1.4   Intended Readership

      The staff of the archiving authority (Planetary Science Archive, ESA, RSSD, design team) and
      any potential user of the MIDAS data.


1.5   Applicable Documents

      [1]      Planetary Data System Data Preparation Workbook
               February 17, 1995, Version 3.1, JPL D-7669, Part1
      [2]      Planetary Data System Standards Reference
               August 1, 2003, Version 3.6, JPL D-7669, Part 2
      [3]      ROSETTA Archive Generation, Validation and Transfer Plan
               October 6, 2005, Issue 2.2, RO-EST-PL-5011
      [4]      ROSETTA Experiment Interface Document - Part A
               February 1, 2004, Issue 2, Rev. 3, RO-EST-RS-3001/EIDA
      [5]      ROSETTA - MIDAS Experiment Interface Document - Part B
               February 15, 2001, Issue 2d, Rev. 0, RO-EST-RS-3010/EIDB
      [6]      ROSETTA - Data Delivery Interface Document (DDID)
               October 23, 2003, Issue B6, RO-ESC-IF-5003
      [7]      MIDAS User Manual
               February 23, 2004, Issue 2, Rev. 1, MID-IWF-UM-0047
      [8]      ROSETTA Time Handling
               February 28, 2006, Issue 1, Rev. 1, RO-EST-TN-3165
      [9]      MIDAS Co-ordinate Systems
               October 28, 2008, Issue 1.0, MID-IWF-TD-0029


1.6    Relationships to Other Interfaces

      N/A


1.7   Acronyms and Abbreviations

      AFM              Atomic Force Microscope
      DAQ              Data Acquisition
      DDID             Data Delivery Interface Document
      DDS              Data Disposition System
      EAICD            Experimenter to (Science) Archive Interface Control Document
      EGSE             Electrical Ground Support Equipment
      FM               Flight Model
      FS               Flight Spare Model
                                                             Document No.     :   MID-IWF-TN-0087
                    ROSETTA-MIDAS to PSA                     Issue/Rev. No.   :   1.4
                    Interface Control Document               Date             :   1 April 2016
                                                             Page             :   9

      IDL             Interactive Data Language
      IWF/OAW         Space Research Institute of the Austrian Academy of Sciences
      JPL             Jet Propulsion Laboratory
      LVDT            Linear Variable Differential Transformer
      MIDAS           Micro-Imaging Dust Analysis System
      N/A             Not applicable
      NAIF            The Navigation and Ancillary Information Facility, JPL/NASA
      NASA            National Aeronautics and Space Administration
      OBT             S/C On-board Time (Spacecraft Elapsed Time according to [4])
      PDS             Planetary Data System
      PSA             Planetary Science Archive
      QM              Qualification Model
      SCET            Spacecraft Event Time (according to [6])
      SPM             Scanning Probe Microscope
      STM             Scanning Tunneling Microscopy
      TB/TV           Thermal Balance/Thermal Vacuum


1.8   Contact Names and Addresses

      Mark Bentley, IWF/OAW, mark.bentley@oeaw.ac.at, +43 (0)316 4120 657
      Harald Jeszenszky, IWF/OAW, harald.jeszenszky@oeaw.ac.at, +43 (0)316 4120 533
      Jens Romstedt, ESA/ESTEC, jens.romstedt@esa.int, +31 (0)71 565 5761
                                                                  Document No.      :   MID-IWF-TN-0087
                      ROSETTA-MIDAS to PSA                        Issue/Rev. No.    :   1.4
                      Interface Control Document                  Date              :   1 April 2016
                                                                  Page              :   10



2 Overview of Instrument Design, Data Handling Process and
  Product Generation

2.1   Scientific Objectives

      The experiment MIDAS (Micro-Imaging Dust Analysis System) is dedicated to the micro textural
      and statistical analysis of cometary dust particles. The instrument is based on the technique of
      atomic force microscopy. Under the conditions prevailing at the Rosetta Orbiter this technique
      permits textural and other analysis of dust particles to be performed down to a spatial resolution
      of 4 nm.


      During the rendezvous with the comet MIDAS will provide the following information:
          *   images of single particles with a spatial resolution of 4 nm,
          *   statistical evaluation of the particles according to size, volume, and shape,
          *   size distribution of particles ranging from about 4 nm to a few um,
          *   shape, volume and topographic structure of individual particles,
          *   temporal variation of particle fluxes,
          *   spatial variation of particle fluxes, and
          *   measurements on local elastic properties if further studies show that they do not affect
              the tip lifetime


      During the cruise phase to the comet MIDAS may provide:
          *   characterization of the dust environment in the vicinity of the asteroids for which a fly-by
              is performed
          *   imaging of impact craters caused by fast interplanetary dust particles, and
          *   statistical analysis of craters on the exposed surface in terms of particle size and volume


      MIDAS will deliver global images, i.e. complete images of the entire scan field, and images of
      individual dust particles. The latter are contained in the former, since selected particles are
      identified from the global image. These particles are then re-scanned with a much higher
      resolution. The measurements by the MIDAS instrument will address many of the questions
      related to cometary dust. In particular, the MIDAS instrument can measure and address the
      following qualities of the collected dust grains:
          *   3D images of single particles
          *   Images of the textural complexity of particle aggregates
          *   Identification of crystalline material if idiomorphic or hypidiomorphic shapes are
              developed
          *   Identification of sub-features on clean surfaces which provides insight into the growth
              conditions (e.g. twinning defects) and/or storage environment (e.g. dissolution marks)
          *   Statistical evaluation of the particles according to size, volume and shape
                                                                Document No.      :   MID-IWF-TN-0087
                     ROSETTA-MIDAS to PSA                       Issue/Rev. No.    :   1.4
                     Interface Control Document                 Date              :   1 April 2016
                                                                Page              :   11

          *   Variation of particle fluxes between individual exposures of the collector unit on time
              scales of hours
          *   Four out of the sixteen sensors are capable of detecting a magnetic gradient between
              sensor and sample and allow the identification of ferromagnetic minerals or the
              visualisation of the internal magnetic structure of a grain.


2.2   AFM Operating Modes

      Contact mode
      The working point is set close to the repulsive force regime where the tip actually touches the
      surface. Typically, a force of the order 10-7-10-6 N is exerted on the sample. Owing to the
      strongly increasing repulsive force at decreasing distances, the tip cannot penetrate deeply into
      the surface and the soft cantilever bends. However, the pressure exerted by the tip is high and
      soft samples, particularly, can be scratched or damaged.


      Dynamic mode
      The cantilever is excited at its natural mechanical resonance frequency (100 kHz) at close
      distance to the sample. The amplitude of the cantilever vibration is of the order 100 nm.
      Depending on the operational setting, the tip may or may not touch the sample during each
      oscillation. At small tip-sample separation of the order 5-10 nm, the interaction of the electron
      orbits results in a weak attractive force, and the resonance frequency of the cantilever changes
      owing to a virtual increase in its spring constant. The quantity thereby measured is not the force
      directly, but its gradient. As in the contact mode, vertical resolution in the nm range can be
      achieved. The force applied by the tip to the sample is of the order 10-8 N. This relatively small
      force and the absence of lateral forces makes damage to the tip less likely, and the lifetime of
      the tip increases considerably. The lateral resolution obtained in dynamic mode is comparable to
      that of the contact mode. However, dynamic mode images often represent not only the
      topography, but also to some extent the elastic properties of the sample under investigation. The
      mechanical resonance frequency of the cantilever has to be determined before any
      measurement in dynamic mode.


      Magnetic force microscopy
      This derivative of atomic force microscopy (Martin and Wickramasinghe, 1987) records a
      magnetostatic force between sample and a magnetised tip. Four of the MIDAS tips have been
      coated with a thin layer of cobalt. The deflections of their cantilevers then result from a
      combination of mechanical and magnetic forces, which can be separated by measurements at
      two different tip-sample distances. These tips map the magnetic structures of the particles in
      addition to the topographies.
                                                                 Document No.      :   MID-IWF-TN-0087
                      ROSETTA-MIDAS to PSA                       Issue/Rev. No.    :   1.4
                      Interface Control Document                 Date              :   1 April 2016
                                                                 Page              :   12


2.3   Operating Principle

      MIDAS is designed to analyse micro dust particles collected in the cometary environment,
      irrespective of their electrical conductivity and shape, by means of atomic force microscopy. The
      size of the particles which can be analysed ranges from about 4 nm to a few um. The dust
      collector system includes a shutter mechanism which controls the particle flux onto a wheel
      covered with special coating to provide maximum adhesion for the particles. Sixty-one separate
      targets at the wheel are available for subsequent exposure to the ambient dust flux. The MIDAS
      microscope consists of five functional parts: a one shot cover and a funnel to protect the
      aperture on the ground and during launch, the shutter to define the exposure time to the dust
      flux, the robotics system for manipulation of the dust particles, the scanner head, and the
      supporting electronics.




                                     Fig. 2.1 - MIDAS Working Principle


      At the heart of the atomic force microscope (AFM) is a very small tip which maps the surface of
      the particle. An AFM is capable, in principle, of imaging details down to atomic resolution. In the
      simplest case, the tip remains in permanent contact with the surface and follows its height
      variations with a control mechanism which keeps a constant force on the tip (contact mode). In a
      technically more complex mode, the tip scans the surface while its supporting cantilever vibrates
      at one of its natural resonance frequencies. Depending on the amplitude of the oscillation in
      dynamic mode, (a) the tip does not come closer to the surface than a few tenths of a nanometre
      (non-contact mode) or (b) the tip hits the surface during its sinusoidal oscillation (tapping mode).
      In all modes it is essential either to keep the force constant or to measure it accurately in order
      to derive an image of the surface.
      The tip must move over the surface in a reproducible manner, which can be relatively easily
      achieved by piezo electric scanners in three independent directions. The combination of the tip,
      supporting cantilever, and piezo-electric actuators is called scanner head. Due to lifetime
      requirements, several tips will be employed (16 in total).
                                                               Document No.     :   MID-IWF-TN-0087
                     ROSETTA-MIDAS to PSA                      Issue/Rev. No.   :   1.4
                     Interface Control Document                Date             :   1 April 2016
                                                               Page             :   13

2.4   Data Handling Process

      The data products will be prepared and delivered by IWF/OAW in collaboration with partners
      from ESTEC. A list of contact persons, phone numbers and email addresses is given in section
      1.8.
      All data products are planned to be level 1b and/or level 2 data (PSA processing label)
      throughout the whole mission lifetime. Higher level data products will be included in the final
      archive volume distribution.
      It is foreseen to use most of the already developed EGSE software modules for data processing.
      This software will be adapted to generate the data products from the raw data archive (locally
      stored laboratory data as well as DDS data after launch).


2.5   Overview of Data Products

      The table below shows the data products which are intended to be archived. A detailed
      description of the different data types follows.


      Data Type                                              Type Mnemonic          PDS Data Type
      Housekeeping Data (Standard, Extended)                 HK1, HK2               TABLE
      Frequency Scan Data                                    FSC                    SERIES
      Single Point Approach Data (Control Data)              SPA                    TABLE
      Single Point Sampling Data (High Resolution Data)      SPS                    SERIES
      Line Scan Data                                         LIN                    TABLE
      Image Scan Data                                        IMG                    IMAGE
      Feature Vector Data (Regions Of Interest)              ROI                    TABLE
      Event Data                                             EVN                    TABLE
      Cantilever Utilisation History                         CAH                    TABLE
      Target Utilisation History                             TGH                    TABLE


                                   Table 2.1 - MIDAS Archive Data Products


      Housekeeping Data
      MIDAS generates two types of housekeeping data:
          *   The standard housekeeping report contains basic information and reflects the "general
              condition" of the instrument (e.g. voltage monitors, temperatures).
          *   The much larger extended housekeeping report includes the status of the instrument
              sub-systems (e.g. linear stage, approach) and all parameters related to the science
              operations.
      Typical data cadences are 4 seconds for the standard HK report and 8 seconds for the extended
      HK report for laboratory generated data. The individual data rates can be changed via
      telecommand and will be much lower during normal flight operations.
                                                            Document No.     :   MID-IWF-TN-0087
                  ROSETTA-MIDAS to PSA                      Issue/Rev. No.   :   1.4
                  Interface Control Document                Date             :   1 April 2016
                                                            Page             :   14



Frequency Scan Data
In order to set the operating point (excitation frequency) for a certain cantilever (tip), the
resonance frequency has to be determined. This is achieved by performing a frequency sweep
in a commanded frequency range. The operating point is set relative to the detected resonance
amplitude. A frequency scan produces up to 8 data packets (depending of the commanded
frequency range and resolution) of 256 data acquisition points each.


The frequency scan is performed
   *       every time approaching the surface,
   *       whenever a new tip is selected, or
   *       during long-lasting (dynamic) scans when re-adjustment of the frequency is required.

The cantilevers (tips) are numbered from 1 to 16 and are addressable by 2 blocks of 8
cantilevers each (physically the cantilevers are structured into four cantilever arrays):


                                                                    Cantilever selection
   Tip #       Description
                                                               Block #             Cantilever #
   1-4         Cantilever array #1                                1                    1-4
   5-8         Cantilever array #2                                1                    5-8
   9-12        Cantilever array #3                                2                    1-4
  13-16        Cantilever array #4 (cobalt coated)                2                    5-8


Tip, cantilever block and cantilever number are also present in the extended housekeeping data
product. Please note that the cantilever number ranges from 0 to 7 in this data product.


Single Point Approach Data
The MIDAS instrument software is capable of monitoring selected data acquisition process
parameters (cantilever AC, DC and phase signal; Z set value) simultaneously in a single scan
position. This feature can be enabled or disabled when performing a line scan and is not
available for the full image scan. The associated data packet contains the last 256 processed
parameter values before the measurement reading is recorded. During a line scan, 32 uniformly
distributed positions are monitored. The parameter MAIN_SCAN_CNT indicates the pixel
number within the line where the approach vector has been recorded.


Single Point Sampling Data
The data acquisition monitoring structure is also used for a more complex instrument mode.
This "high resolution" scanning mode allows the sampling of the above-mentioned parameters
with a frequency of up to 700 samples per second. The scanner head remains in the same X/Y
position when taking the data samples (STEP_SIZE parameter is 0). Thus the Single Point
Sampling data product corresponds to a single point located on the target surface.
By getting into contact with the surface (static or DC mode), the cantilever DC signal can be
used to measure micro-vibrations with a maximum frequency of 350 Hz. This mode is frequently
used during the pointing and interference scenario.
                                                           Document No.     :   MID-IWF-TN-0087
                 ROSETTA-MIDAS to PSA                      Issue/Rev. No.   :   1.4
                 Interface Control Document                Date             :   1 April 2016
                                                           Page             :   15

In order to detect possible micro-vibrations, a Fast Fourier Transform (FFT) has to be applied to
the DC sample vector. Analysis of the resulting frequency spectrum will give an indication
(spectral lines with higher amplitude) on micro-vibrations.


Line Scan Data
Additionally to the full image scan, MIDAS is able to scan single lines in either X or Y direction.
The line scan values have two different meanings depending on the commanded scanning
mode:
    *   In dynamic or contact mode the Z piezo set values at the surface are stored in the line
        scan.
    *   In magnetic mode the differences of the cantilever AC signals at the surface and at a
        given distance from the surface are recorded.
The size of a line scan is a multiple of 32, ranging from 32 to a maximum of 512 DAQ points.


Image Scan Data
The image scan is the key operation of the instrument MIDAS. The on-board image memory of 1
MB can hold a maximum of 8 standard images (256x256 pixel / 1 DAQ channel = 128 kB). The
image dimensions are multiples of 32 pixels, ranging from 32 to a maximum of 512 DAQ points.
During a single image scan up to 8 data channels can be measured in parallel. At the present
time 14 data channels are available (the value in curly braces gives the calibration curve number
as defined in the calibration table MIDCALIB.TAB defined in chapter 3.4.2.2):
    *   [ZS] Z piezo set value (this is the default channel for all scanning modes) {40}
    *   [AC] Cantilever AC signal at surface (required for magnetic mode) {3}
    *   [PH] Cantilever Phase signal {13}
    *   [DC] Cantilever DC signal {3}
    *   [XH,YH,ZH] X, Y, Z piezo high voltage monitor {8}
    *   [M1,M2,M3] Cantilever AC signal at (magnetic) retract position 1,2,3 {3}
    *   [YP,ZP] Y, Z piezo position (measured) {3}
    *   [YE,ZE] Y, Z piezo offset error (control loop deviation set value / measured value) {3}
    *   [S1,S2] Data point acquisition status information
If more than one data channel is selected for a scan, the software generates a separate image
for every channel.


Feature Vector Data
Another facet of the instrument software is the calculation of so-called "feature vectors" for an
already acquired image. These vectors are providing statistical information (10 parameters in
total) of features found in the image, for example area or volume. The features are selected
dependent on a number of commandable criteria. By weighting the selection criteria, it is
possible to determine a feature which suits best the given requirements. The coordinates of the
determined feature can then be used to automatically zoom-in into the underlying image.
A maximum of 1024 feature vectors can be stored for a single image. The vectors are packed
into statistical data packets containing 64 vectors each.
                                                                Document No.      :   MID-IWF-TN-0087
                     ROSETTA-MIDAS to PSA                       Issue/Rev. No.    :   1.4
                     Interface Control Document                 Date              :   1 April 2016
                                                                Page              :   16

     Event Data
     Every task (e.g. mechanical sub-system movement, scan, image processing) running on the
     instrument has associated a number of events providing information about the status of the task
     (e.g. started, finished and aborted). In order to keep track of the task execution, the events will
     also be part of the MIDAS data archive.
     A list of events is given in the MIDAS User Manual in section 2.3.3.1 "TM data packet overview".


     Cantilever Utilisation History Data
     The MIDAS scanner head holds 16 different cantilevers (tips) mainly for redundancy purposes,
     and four of these tips are coated with magnetic material and may be used for magnetic mode
     scans. For the interpretation of the AFM images it is necessary to know the history of the tip
     which has been used for the image acquisition. A list of operating times and associated
     scanning parameters (e.g. scanning mode, gain levels and excitation level) will be stored for
     each cantilever.
     The cantilever history files are cumulative, containing the data from the start of the mission up to
     and including the mission phase represented in a dataset.


     Target Utilisation History Data
     For each of the 64 scanning targets (including the three calibration targets) a list of events
     concerning the target will be maintained and stored in the archive. Dedicated information like the
     dust flux during exposure recorded by GIADA or the scanning tip number will be stored in this
     table.
     The targets are numbered from 1 to 64 and each target is subdivided into 16 addressable
     segments (or scan bands). This results in a total number of 1024 addressable target segments.
     The segments are numbered from 0 to 1023, with segment 0 referring to the centre of target 1:


      Target #    Description                                           Addressed by segment #
                                                                   Min         Centre          Max
          1       Dust collector target                           1017            0              7
          2       TGZ02 - Z calibration (106 nm height)             9             16             23
          3       TGX01 - used for X/Y calibration                 25             32             39
          4       TGT01 - X/Y calibration and tip imaging          41             48             55
          5       Dust collector target                            57             64             71
         ...
         64       Dust collector target                           1001           1008          1015

     The target history files are cumulative, containing the data from the start of the mission up to and
     including the mission phase represented in a dataset.


2.5.1 Pre-Flight Data Products

     MIDAS will provide laboratory data from the TB/TV acceptance tests of the FM. Since the
     generation of the feature vectors was not implemented in the instrument S/W at that time, it is
     also intended to create a data set from dedicated FS or QM tests.
                                                                  Document No.     :   MID-IWF-TN-0087
                     ROSETTA-MIDAS to PSA                         Issue/Rev. No.   :   1.4
                     Interface Control Document                   Date             :   1 April 2016
                                                                  Page             :   17

2.5.2 Sub-System Tests

     A series of micro-vibration tests were performed on the QM.


2.5.3 Instrument Calibrations

     X/Y/Z Calibration
     The X-, Y- and Z-sensors of the MIDAS instrument are calibrated by means of three reference
     grids which are mounted on the target wheel. These reference grids are scanned on a more or
     less regular basis in order to re-calibrate the scanner head:


         *   TGX01 - used for X/Y calibration

             The silicon calibration grating of the TGX series
             is a chessboard-like array of square pillars with
             sharp undercut edges formed by (110)
             crystallographic planes of silicon.

         *   TGZ02 - Z calibration (106 nm height)

             Calibration gratings of the TGZ series are 1-D
             arrays of rectangular SiO2 steps on a Si wafer.
             The structure is coated by Si3N4 to prevent Si
             from oxidation. The step height value is
             calibrated over the whole active area.

         *   TGT01 - X/Y calibration and tip imaging
                                                                  0.7 um*




             The silicon calibration grating of the TGT01
             series is an array of sharp tips, characterized by
             strict symmetry of tip sides, small cone angle
             (less than 20 degrees) and small curvature
             radius of the tips (less than 10 nm) over the
             whole active area.


         The dimensions marked (*) show approximate values and are given for information only.


     The archive will contain the following calibration data:
         *   Tip resonance curves as a function of the excitation frequency in [V]
         *   Tip positions as a function of the linear stage LVDT monitor in [V] and [um] (see [9])
         *   Tip images acquired by sampling calibration grating TGT01
         *   X/Y step calibration (can be derived from sampling calibration grating TGX01)
         *   Z step calibration (can be derived from sampling calibration grating TGZ02)
         *   HK parameter conversion from raw to physical values
                                                               Document No.      :   MID-IWF-TN-0087
                    ROSETTA-MIDAS to PSA                       Issue/Rev. No.    :   1.4
                    Interface Control Document                 Date              :   1 April 2016
                                                               Page              :   18

2.5.4 Other Files written during Calibration

     Numerous reference measurements with commercial AFM's (Zeiss, Park) have been
     performed. The resultant image database is used as reference for the analysis and interpretation
     of MIDAS generated images.


2.5.5 In-Flight Data Products

     A list of data products as well as a detailed description is already provided at the beginning of
     section 2.5.
     The data products are planned to be level 1b and/or level 2 data (PSA processing label)
     throughout the whole mission lifetime. Higher level data products are likely to be included in the
     final archive volume distribution.
                                                              Document No.     :   MID-IWF-TN-0087
                     ROSETTA-MIDAS to PSA                     Issue/Rev. No.   :   1.4
                     Interface Control Document               Date             :   1 April 2016
                                                              Page             :   19


2.5.6 Software

2.5.6.1   Data Archiving Software


      The MIDAS data archiving software is a graphical user interface written in IDL and is used to
      prepare the MIDAS archive data sets to be delivered to the PSA.




                                    Fig. 2.2 - MIDAS Data Archiving S/W
      Key features of the archiving software are:
          *   Data sets are created directly from the MIDAS raw data archive by means of data set
              templates which are completed during data processing.
          *   The S/W is capable of managing so called "data set profiles" in order to ease re-
              production of entire data sets.
                                                                Document No.      :   MID-IWF-TN-0087
                     ROSETTA-MIDAS to PSA                       Issue/Rev. No.    :   1.4
                     Interface Control Document                 Date              :   1 April 2016
                                                                Page              :   20

          *   A number of label verification tools (PVV, NASA PDS tools) are already integrated into
              the archiving software. This allows the user to validate the data sets immediately after
              generation.

2.5.6.2   Data Verification Software


      This software is used to display and validate the contents of an entire MIDAS archive data set
      interactively. The software is entirely written in IDL and the source code is included in the data
      sets. The source files (extension *.PRO) are located in the DOCUMENT directory of a data set.
      A detailed description of the software is provided in section 5.



2.5.6.3   Third Party Software Packages


      NASAView
      NASAView (http://pds.nasa.gov/tools/nasa-view.shtml) is a PDS archive product display
      program that runs on multiple platforms in a GUI environment. The tool can be used to view the
      MIDAS images located in the DATA/IMG directory.




                            Fig. 2.3 - MIDAS Image taken during LUTETIA Fly-by
      PDS Tools Package
      The PDS Tools Package (http://pds.nasa.gov/tools/pds-tools-package.shtml) is the complete set
      of PDS Engineering Node supported tools. This package contains a single installer file which
      includes the option to install the following tools:
          *   Keyword Definition (ddict): Lists all keywords and their definitions from the specified
              file(s).
          *   Keyword Verifier (kwvtool) : Lists all keywords and a distinct set of their values from the
              specified file(s).
                                                          Document No.     :   MID-IWF-TN-0087
               ROSETTA-MIDAS to PSA                       Issue/Rev. No.   :   1.4
               Interface Control Document                 Date             :   1 April 2016
                                                          Page             :   21

   *   Label Parser: The Java-based label parser parses an ODL label and generates an XML
       representation.
   *   Label Verifier (lvtool): Performs validation of PDS labels.
   *   Line Analyzer (line): Analyzes each line of a file and reports anomalies.
   *   Make Index (make_index): Creates an index file (pdsdd.idx) from a data dictionary file
       (pdsdd.full).
   *   Perl Validation Toolkit: Validates PDS volumes (includes lvtool and kwvtool).
   *   Table Checker (table_check): Performs a variety of tests on PDS table objects.
   *   Table to Label Generator (tab2lab): Generates PDS labels from values in a table.
   *   Table Verifier (tbtool): Utility for validating, browsing and summarizing data that is
       organized by rows and columns and is described by a PDS label.
The PDS Tools Package also includes libraries which are utilized by the tools listed above and
are available for use in customized applications:
   *   Label Library (lablib): This library, written in C, can be used to read, process and write
       PDS labels.
   *   Label Library Light (lablib3): This library, written in C, can be used to read, process and
       write PDS labels. Compared to lablib, this library is smaller, faster and has a simpler
       interface.
   *   ODLC Library (odlc): This library, written in C, can be used to access data that meet the
       standards of the PDS.
   *   Object Access Library (oal): This library, written in C, can be used to access data that
       meet the standards of the PDS.
                                                             Document No.      :   MID-IWF-TN-0087
                    ROSETTA-MIDAS to PSA                     Issue/Rev. No.    :   1.4
                    Interface Control Document               Date              :   1 April 2016
                                                             Page              :   22


2.5.7 Documentation

    The following documents will be included in the MIDAS archive DOCUMENT directory:
          *  MIDAS User Manual
          *  MIDAS EAICD
          *  MIDAS Co-ordinate Systems
          *  MIDAS instrument paper as presented in the Space Science Review (2007)
    These documents are converted to ASCII format. Associated drawings are stored as "Portable
    Network Graphic" (PNG) files.
    In addition, PDF versions of the listed documents are available from the same directory.


2.5.8 Derived and other Data Products

    N/A


2.5.9 Ancillary Data Usage

    N/A
                                                                   Document No.     :   MID-IWF-TN-0087
                      ROSETTA-MIDAS to PSA                         Issue/Rev. No.   :   1.4
                      Interface Control Document                   Date             :   1 April 2016
                                                                   Page             :   23



3 Archive Format and Content

3.1   Format and Conventions

3.1.1 Deliveries and Archive Volume Format

      The logical archive volumes will contain one data set per volume. Up to now, three basic types
      of logical archive volumes are planned:
          *   Selected laboratory data
          *   Checkout data generated during flight (cruise phase)
          *   Data acquired in the close comet environment (cometary phase)


3.1.2 Data Set ID Formation

      The MIDAS data set identifiers are defined as follows (see archive plan [3]):
          *   "RO-{target ID}-MIDAS-{level}-{phase}-{description}-Vx.y"
      {target ID} = {C, A, E, M, CAL, X, D, SS, C}
      {level} = processing level = {3, 5}
      {phase} = mission phase = {GRND, CVP, CR1, ...}
      {description} = free character string containing only A-Z, 0-9 (e.g. TV)


3.1.3 Data Set Name Formation

      The MIDAS data set names are defined as follows (see archive plan [3]):
          *   "ROSETTA-ORBITER {target name} MIDAS {level} {phase} {description} Vx.y"
      {target name} = {67P, STEINS, LUTETIA, ...}
      {level} = processing level = {3, 5}
      {phase} = mission phase = {GRND, CVP, CR1, ...}
      {description} = free character string containing A-Z, 0-9, - (e.g. TV-TEST)


3.1.4 Data Directory Naming Convention

      For all data sets the data directory is structured as follows:
          *   /DATA[/{data type}]/file(s)
      {data type} = {EVN, FSC, HK1, HK2, IMG, LIN, ROI, SPA, SPS}
      Cantilever and target history files (CAH, TGH) are stored in the data directory root.
                                                                    Document No.      :   MID-IWF-TN-0087
                         ROSETTA-MIDAS to PSA                       Issue/Rev. No.    :   1.4
                         Interface Control Document                 Date              :   1 April 2016
                                                                    Page              :   24

3.1.5 File Naming Convention

      The following file naming scheme will be used for all data sets (the "extra" field is optional and
      depends on the data type):
          *   {data type}_{start}_{stop}[_{extra}].{ext}
      {data type} = {CAH, EVN, FSC, HK1, HK2, IMG, LIN, ROI, SPA, SPS, TGH}
      {start} = begin of observation rounded to nearest hour, format = yydddhh
      {stop} = end of observation rounded to nearest hour, format = yydddhh
      {extra} = more specific information about the file content:


                 data type           extra information              possible values           field format
                 HK1, HK2,
                                                                    not used
                 EVN
                                                                    001..FFF
                                     sequence counter [nnn]
                 FSC, SPA,                                                                      nnn_tt
                 SPS, LIN                                           01..16
                                     tip number [tt]
                                                                    001..999
                                     sequence counter [nnn]
                                                                    ZS,   AC,   PH,   DC,
                                     DAQ channel [dd]
                                                                                                nnn_dd
                 IMG                                                M1,   M2,   M3,   XH,
                                                                    YH,   ZH,   YP,   ZP,
                                                                                      S2*)
                                                                    YE,   ZE,   S1,
                                                                    001..999
                                     sequence counter [nnn]
                                                                                                nnn_ff
                 ROI
                                                                    01..64
                                     target number [ff]
                                                                    01..16                        tt
                 CAH                 tip number [tt]
                                                                    01..64                        ff
                 TGH                 target number [ff]
                *)   A description of the DAQ channels is given in section 2.5 (Image Scan Data).

      {ext} = depends on the data type (e.g. IMG for images, DAT/TAB for binary/ASCII tables)


3.2   Standards Used in Data Product Generation

3.2.1 PDS Standards

      The MIDAS archive is based on the PDS Standard version 3.6 released in August 2003.


3.2.2 Time Standards

      All MIDAS timing information of archive data products that are mapped to binary tables (e.g.
      housekeeping data telemetry packets), is given in the Spacecraft Elapsed Time (referred to as
      OBT to prevent confusion with the SCET defined in the DDID) format as defined in [4], section
      2.7. The format used to represent the OBT is 4 bytes of unit seconds followed by 2 bytes of
      fractional seconds and is stored in the TM packet data field header. The OBT is set to zero at
      00:00:00 UTC on 1 Jan 2003. The instrument is synchronised with the S/C OBT on a regular
                                                            Document No.      :   MID-IWF-TN-0087
                   ROSETTA-MIDAS to PSA                     Issue/Rev. No.    :   1.4
                   Interface Control Document               Date              :   1 April 2016
                                                            Page              :   25

    basis (typically every 30 minutes). In order to convert the OBT to UTC the NAIF SPICE software
    library is used. A more detailed description of the ROSETTA time standards is given in [8].
    To represent UTC time values in archive data products represented by ASCII tables (e.g.
    cantilever history data), the ASCII Time Code A format, defined by the Consultative Committee
    for Space Data Systems (CCSDS) is used. The ASCII Time Code A is a 24 character string of
    the format "YYYY-MM-DDThh:mm:ss.dddZ". According to the archive plan the trailing "Z" is
    omitted and no quotes are used
    In ground-based data sets the OBT reference is 00:00:00 UTC on 1 Jan 1970. Since the S/C
    clock is not defined for ground based data, there is no relationship between the
    SPACECRAFT_CLOCK_START/STOP_COUNT keywords (set to "N/A") and the
    START/STOP_TIME keywords (representing UTC) in the data labels. This has been taken into
    account by adding the NATIVE_START/STOP_TIME keywords to the data labels. The native
    start/stop time is given in seconds since 00:00:00 UTC on 1 Jan 1970 with leap seconds not
    taken into account (also referred to as UNIX time).


3.2.3 Reference Systems

    MIDAS Coordinate Systems
    The following reference systems are applicable to the MIDAS instrument:
        *   Unit Reference Frame: The basic co-ordinate system to be used for MIDAS at
            instrument level.
        *   AFM Reference Frame: The ARF system is used in the context of scanner operations
            and is fixed to the frame of the scanner table.
        *   Target Reference Frame: Defines the co-ordinate system on any individual target area
            (or target) on the collector.
    A detailed description of the MIDAS X/Y/Z reference systems can be found in the MIDAS Co-
    ordinate Systems document [9].


    J2000 System
    The Earth Mean Equator and Equinox of Julian Date 2451545.0 (referred to as the J2000
    system) is the standard inertial reference frame. Some of the geometry keywords given in the
    data labels are expressed in J2000 coordinates (e.g. SC_SUN_POSITION_VECTOR).


3.2.4 Other Applicable Standards

    In order to represent and store the images in the MIDAS archive, the raw data images are
    converted to BCR. The BCR-STM file format has been developed for easy exchange of SPM
    files independent of the instruments used (see SPIP Reference Guide at
    http://www.imagemet.com/WebHelp6/Default.htm).
    The header is 2048 bytes long and written in ASCII characters, which can be edited by a text
    editor. The first line identifies the format and should be:
        *   fileformat = bcrstm
    Additional parameters are defined as follows:
        *   xpixels and ypixels defines the number of pixels in the image
        *   xlength and ylength defines the scanning range in nm
                                                                    Document No.       :   MID-IWF-TN-0087
                      ROSETTA-MIDAS to PSA                          Issue/Rev. No.     :   1.4
                      Interface Control Document                    Date               :   1 April 2016
                                                                    Page               :   26

          *   xunit, yunit and zunit units for the three axes (if not defined nm will be the default unit)
          *   current defines the tunneling current in nA (optional)
          *   bias defines the bias voltage in V (optional)
          *   starttime defines the starting time of the scanning (DD MM YY hh:mm:ss:hh) (optional)
          *   scanspeed is measured in nm/sec (optional)
          *   intelmode = 1 indicates that the data is written in little-endian 16-bit integers (LSB first;
              e.g. Intel x86 processors)
          *   intelmode = 0 indicates that the data is written in big-endian 16-bit integers (MSB first;
              e.g. Motorola 6800 processors)
          *   bit2nm is the scale factor for scaling the integer height data to nm
          *   xoffset and yoffset defines physical offset in nm (optional)
          *   voidpixels defines the value of void pixels (should be set equal to 32767; if omitted, the
              value is assumed to be 0)
      Comments can be written by starting the line with the characters `%' or `#'.
      It is possible to integrate new parameters as long the header size does not exceed 2048 bytes.
      The body of the BCR file contains xpixels*ypixels 16 bit signed integer data values.


3.3   Data Validation

      The following tools are used in order to validate the generated MIDAS data sets:
      PSA Volume Verifier (PVV)
      The PVV is a tool constructed by the PSA team to allow instrument teams from all of ESA's
      planetary missions to check their datasets before they are delivered to the PSA database for
      ingestion into the long-term archive. The tool allows a user to verify PDS compliance of a label,
      and validates all aspects of the data set structure / content prior to delivery to the PSA. The PVV
      is systematically used by the PSA team to check data sets as part of the ingestion process to the
      Planetary Science Archive (PSA).


      NASA PDS Tools
      The PDS Tools Package is the complete set of PDS Engineering Node supported tools. The
      following tools of the package are used:
          *   ddict - Extracts the data dictionary definition for every keyword used in a specified PDS
              label file, a specified list of PDS label Files, all of the labels in a directory, or all of the
              files on an entire volume. DDICT also lists those keywords that are not in the dictionary.
          *   kwvtool - This software creates a list of all keywords and their values found in a PDS
              label file or in a group of PDS label files.
          *   line - The LINE program analyzes each line in each file and reports on the status of
              certain PDS standards and the value associated with some of the PDS keywords.
          *   lvtool - This software checks PDS labels for compliance with the labeling standards
              established by the PDS for data product labels.
          *   NASAView - This program allows the user to display and examine PDS archive data
              products interactively.
                                                           Document No.      :   MID-IWF-TN-0087
                ROSETTA-MIDAS to PSA                       Issue/Rev. No.    :   1.4
                Interface Control Document                 Date              :   1 April 2016
                                                           Page              :   27

    *   table_check - The table checker program is a tool that checks PDS labels and its
        corresponding data files. It parses a label, checks for label and data errors (BINARY or
        ASCII files), and reports and summarizes its findings.
    *   tbtool - The PDS Table Browser is a utility for validating, browsing, and summarizing
        data that is organized by rows and columns and is described by a PDS label file.
MIDAS Data Set Browser
This software is used to display and validate the contents of an entire MIDAS archive data set
interactively. The software is entirely written in IDL and the source code files are included in the
DOCUMENT directory of the data sets (see chapter 5).
                                                               Document No.      :   MID-IWF-TN-0087
                     ROSETTA-MIDAS to PSA                      Issue/Rev. No.    :   1.4
                     Interface Control Document                Date              :   1 April 2016
                                                               Page              :   28


3.4   Content

      The MIDAS archive will contain data from important laboratory measurements, instrument
      checkout data generated in the interplanetary cruise phase and instrument data acquired in the
      close comet environment, as well as derived or merged instrument data e.g. the cantilever
      utilisation history or the target exposure history.


3.4.1 Volume Set / Data Set

      The Rosetta archive is an online archive, where the data are delivered electronically. Thus there
      is no need to bundle several data sets into one volume, and one data set corresponds to one
      volume. A data set will include the data products as well as the secondary data, software and
      documentation that completely document and support the use of these data products. In
      general, the data products from the different instruments are contained in separate data sets,
      but merged data sets are possible. Data sets may include data products from one or more
      mission phases. Data products of different data processing levels are contained in separate data
      sets.


3.4.2 Directories

      The top-level structure of the ROOT directory of a typical MIDAS data archive volume (= data
      set) corresponds to chapter 19 of the PDS Standards Reference [AD2] and is summarised
      below:

3.4.2.1   Root Directory


      .PDSVOLUME: Archive data file catalogue generated by PVV.
      AAREADME.TXT: This file describes the volume (= data set) as a whole. It gives an overview of
      the contents and organisation of the data set, general instructions for its use and contact
      information.
      ERRATA.TXT: This file describes errors and/or anomalies found in this and previous volumes (=
      data sets). As erroneous data sets should be corrected and delivered again, there is no need for
      this file.
      VOLDESC.CAT: This file contains the VOLUME object, which gives a high-level description of
      the contents of the volume (= data set).

3.4.2.2   Calibration Directory


      This directory contains the calibration files used in the processing of the raw data or needed to
      use the data products in the volume (= data set).
      CALINFO.TXT: Description of the contents of the CALIB directory.
      MIDCALIB.LBL: PDS label associated to the standard MIDAS calibration table.
      MIDCALIB.TAB: Standard MIDAS calibration table in PDS ASCII format.
                                                     Document No.      :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                   Issue/Rev. No.    :   1.4
              Interface Control Document             Date              :   1 April 2016
                                                     Page              :   29



The following table shows the standard calibration curves used for MIDAS housekeeping and
science data calibration:

 Reference   Calibration    Calibration
                                           Unit   Description
     #         Offset         Factor
     1           0.0            1.0               One to one conversion
     2          -10.0      4.884005E-03     V     12 bit DAC set value [-10..10 V]
     3           0.0       3.051804E-04     V     16 bit ADC data [-10..10 V]
     4          -10.0      3.051804E-04     V     16 bit DAC set value [-10..10 V]
     5          -273.0     1.142998E-02    degC   Temperature [-273..101.52 degC]
     6           0.0       9.170596E-04     V     +15 voltage monitor [-30..30 V]
     7           0.0       9.170596E-04     V     -15 voltage monitor [-30..30 V]
     8          100.0      4.272530E-03     V     Piezo HV voltage monitor [-40..240 V]
     9           0.0            1.0        um     Linear position set value [0..65535 um]
     10          0.0            0.1        um     XY stage positioning [0..6553.5 um]
     11          0.0       2.136263E-01    nm     XYZ position monitor [0..14000 nm]
                                                  Pulse generator pulse width
     12         21.0           42.0         us
                                                  [21..2752491 us]
     13          0.0       5.493248E-03    deg    Cantilever phase signal [-180..180 deg]
     14          0.0       1.525902E-03     %     F-scan operating variables [0..100 %]
     15          0.0       4.577034E+01     Hz    Frequency high word [0..2999.56 kHz]
     16          0.0        6.984E-04       Hz    Frequency step/low word [0..45.77 Hz]
     17          0.0            1.0        sec    Time in seconds [0..65535]
     22       -0.065904      0.010293       A     MIDAS LCL 6A current
     23       -0.071692      0.010242       A     MIDAS LCL 6B current
     24       -1.845312      0.288204       W     MIDAS LCL 6A power
     25       -2.007376      0.286776       W     MIDAS LCL 6B power
     30          0.0            1.0               Bit pattern for image types
     31         800.0      -2.71276E-02    um     Approach LVDT position
     32        16.398         1.8221       mm     Linear stage LVDT position
     33          0.0       3.051804E-04     %     F-scan operating point [-100..100 %]
     34          0.0       6.103609E-05           Feature vector weight factor [0..4]
     35          0.0       1.525902E-05           Linear regression x/y factor
     40          0.0          0.164        nm     Z DAC set value (closed loop)
     41          0.0          3.814        nm     X DAC set value (open loop = default)
     42          0.0          1.389        nm     X DAC set value (closed loop)
     43          0.0          3.814        nm     Y DAC set value (open loop = default)
     44          0.0          1.389        nm     Y DAC set value (closed loop)
                                                                  Document No.       :   MID-IWF-TN-0087
                        ROSETTA-MIDAS to PSA                      Issue/Rev. No.     :   1.4
                        Interface Control Document                Date               :   1 April 2016
                                                                  Page               :   30


3.4.2.3     Catalog Directory


      This directory contains the catalog object files for the entire volume (= data set):
      CATINFO.TXT: Description of the contents of the CATALOG directory.
      DATASET.CAT: PDS data set catalog information about the data set currently being submitted.
      INST.CAT: PDS instrument catalog information about the MIDAS instrument (likely to be the
      same in all deliveries, unless updates are needed).
      INSTHOST.CAT: PDS instrument host catalog information about the Rosetta spacecraft and the
      mounting relationship of the instruments within the spacecraft; provided by ESA.
      MISSION.CAT: PDS mission catalog information about the Rosetta mission; provided by ESA.
      REFERENCE.CAT: PDS reference catalog information about the every journal article, book or
      other published reference mentioned in the above catalog objects or their components.
      SOFTWARE.CAT: PDS software catalog information about the software submitted in the data
      set.
      TARGET.CAT: PDS target catalog information about the observation target, i.e. comet, asteroid,
      Earth or Mars; provided by ESA.

3.4.2.4     Index Directory


      This directory contains the index files summarising all data products in the volume (= data set)
      by mode, key instrument parameters or mission phase, and organised to facilitate finding the
      data of interest for a particular scientific question. Information about the observation geometry of
      the data products are also included here, i.e. spacecraft position and attitude, illumination
      conditions etc. Information that is not accurately known at the time of delivery and thus will
      probably be updated later is stored in the index files rather than in the data product labels.
      INDXINFO.TXT: Description of the contents of the INDEX directory.

3.4.2.4.1    Dataset Index File, index.lbl and index.tab


      INDEX.LBL: Detached label for the index table INDEX.TAB. The INDEX_TABLE specific object
      is used to identify and describe the columns of the index table.
      INDEX.TAB: Index of the data set in tabular format.

3.4.2.4.2    Other Index Files


      None
                                                               Document No.      :   MID-IWF-TN-0087
                      ROSETTA-MIDAS to PSA                     Issue/Rev. No.    :   1.4
                      Interface Control Document               Date              :   1 April 2016
                                                               Page              :   31


3.4.2.5    Software Directory


      This directory will not be provided in the data sets. Nevertheless, the source codes (IDL
      routines) for data calibration, visualization and analysis will be provided in the DOCUMENT
      directory.

3.4.2.6    Label Directory


      This directory contains PDS labels and includes files (referenced by a pointer in a PDS label)
      that are not packaged with the data products or in the data directory. For example, the format
      descriptions (columns) of the standard and extended housekeeping data products are located in
      this directory.
      LABINFO.TXT : Description of the contents of the LABEL directory.


3.4.2.7    Document Directory


      This directory provides documentation and supplementary and ancillary information to assist in
      understanding and using the data products in the volume (= data set). The documentation
      describes the MIDAS instrument as well as the MIDAS data sets and calibration. The MIDAS
      EAICD is included. According to the PDS standards the documents are present in ASCII format
      to ensure long-term readability. Document versions in PDF format are also provided in this
      directory.
      DOCINFO.TXT : Description of the contents of the DOCUMENT directory.


3.4.2.8    Extras Directory


      This directory will not be provided in the data sets.

3.4.2.9    Data Directory


      This directory contains the actual data such as images or tables. PDS labeled data files or data
      files with detached PDS label files are arranged in a logical subdirectory structure (see section
      3.1.4, Data Directory Naming Convention). Format specifications referred to in PDS labels are
      provided in the LABEL directory.

3.4.2.10    Browse, Geometry and Gazetter Directory


      These directories are not provided in the data sets.
                                                                        Document No.       :   MID-IWF-TN-0087
                        ROSETTA-MIDAS to PSA                            Issue/Rev. No.     :   1.4
                        Interface Control Document                      Date               :   1 April 2016
                                                                        Page               :   32



4 Detailed Interface Specifications

4.1   Structure and Organization Overview

4.1.1 Data Processing Diagram

      The diagram below shows the MIDAS archive data set production principle:



                                            MIDAS data set production



                                          Setup
              MIDAS
                                                                                 e.g PC0 data (2 sessions):
          raw data archive                          Select raw
                                                                                 TLM_0508523_0508602_*.DAT
            (DDS data)                             data source(s)
                                                                                 TLM_0510911_0510918_*.DAT


                                                    Define global                e.g. volume start and stop time,
                                                  data set attributes            mission phase name and target, ...


           Data set profile
                                          Processing
                                                                                 creates data set directory structure
                                                    Create empty
                                                                                 and ingests data independent files
                                                      data set
                                                                                 (e.g. VOLDESC.CAT, format files, ...)
            ROSETTA
           SPICE kernel
                                                  For each session
            data pool

                                                                                 ingests data labels and files for each
                                                       Ingest data               session within the selected raw data
                                                          files                  (session = set of raw data files
          MIDAS archive
                                                                                 belonging to the same observation)
         data set templates

                                                       End of loop




                                          Validation

           MIDAS archive                                Cleanup                  removes unused format files and
              data set                                  data set                 labels as well as empty directories



                                                        Validate                 data validation with several tools
                                                        data set                 (e.g. PVV, NASA PDS Tools, ...)




                                                          End
                                                               Document No.         :   MID-IWF-TN-0087
                    ROSETTA-MIDAS to PSA                       Issue/Rev. No.       :   1.4
                    Interface Control Document                 Date                 :   1 April 2016
                                                               Page                 :   33

4.1.2 Data Product Preparation

    The preparation of the different data products is carried out in two different ways, depending on
    the data type:
        *   Plain TM packet copy: The archive data files are generated from the plain DDS raw
            data telemetry packets with the DDS header removed (e.g. housekeeping data files).
        *   Derived data products: At least one additional processing step is required in order to
            generate the data files (e.g. image data files).


    The following table gives an overview of the MIDAS data products and the associated type of
    data preparation (session = set of raw data files belonging to the same observation and/or time
    range):


     Data Type                        Mnemonic Data Processing                              Table Type
     Housekeeping Data                HK1, HK2   plain TM copy; one file per session        BINARY
     Frequency Scan Data              FSC        plain TM copy; one file per scan           BINARY
     Single Point Approach Data       SPA        plain TM copy; one file per approach BINARY
     Single Point Sampling Data       SPS        plain TM copy; one file per scan           BINARY
     Line Scan Data                   LIN        plain TM copy; one file per line           BINARY
     Image Scan Data                  IMG        converted to BCR format; one file          BINARY
                                                 per image and image data type
     Feature Vector Data              ROI        plain TM copy; one file per task           BINARY
     Event Data                       EVN        converted to ASCII; one file per           ASCII
                                                 session
     Cantilever Utilisation History   CAH        extracted from cumulative cantilever       ASCII
                                                 history file; one file per data set
     Target Utilisation History       TGH        extracted from cumulative target           ASCII
                                                 history file; one file per data set
                                                                 Document No.     :   MID-IWF-TN-0087
                      ROSETTA-MIDAS to PSA                       Issue/Rev. No.   :   1.4
                      Interface Control Document                 Date             :   1 April 2016
                                                                 Page             :   34


4.2   Data Sets, Definition and Content

4.2.1 Data Set Production

      According to the ROSETTA Archive Plan there is one separate data set per mission phase in
      the pre-cometary phase. The PDS formatted MIDAS data archives are delivered at the latest 6
      months after the end of the single mission phases.
      After arriving at the comet, a continuous data flow is anticipated (mission phases approach,
      Lander delivery and relay, escort, extended mission), and the PDS formatted MIDAS data sets
      are delivered in 3-month intervals. The last proprietary, validation and archive preparation period
      of 6 months starts at the end of the Rosetta mission.
      The following data sets are provided (as defined in the ROSETTA Mission Calendar):

       Mission Phase             Start Date     End Date       Date Set ID
       GROUND                    2000-01-01     2004-03-01     data set selection ongoing
       LAUNCH                    2004-03-02     2004-03-04     no data
                                 2004-03-05     2004-06-06
       COMMISSIONING                                           RO-CAL-MIDAS-3-CVP-FULL-V1.0
                                 2004-09-06     2004-10-16
       CRUISE 1                  2004-06-07     2004-09-05     no data
       EARTH SWING-BY 1          2004-10-17     2005-04-04     RO-X-MIDAS-3-EAR1-PC0-V1.0
       CRUISE 2                  2005-04-05     2006-07-28     RO-X-MIDAS-3-CR2-PC1-2-V1.0
       MARS SWING-BY             2006-07-29     2007-05-28     RO-X-MIDAS-3-MARS-PC3-5-V1.0
       CRUISE 3                  2007-05-29     2007-09-12     no data
       EARTH SWING-BY 2          2007-09-13     2008-01-27     RO-X-MIDAS-3-EAR2-PC6-7-V1.0
       CRUISE 4-1                2008-01-28     2008-08-03     RO-X-MIDAS-3-CR4A-PC8-V1.0
       STEINS FLY-BY             2008-08-04     2008-10-05     no data
       CRUISE 4-2                2008-10-06     2009-09-13     RO-X-MIDAS-3-CR4B-PC9-V1.0
       EARTH SWING-BY 3          2009-09-14     2009-12-13     RO-X-MIDAS-3-EAR3-PC10-V1.0
       CRUISE 5                  2009-12-14     2010-05-16     RO-X-MIDAS-3-CR5-PC12-V1.0
       LUTETIA FLY-BY            2010-05-17     2010-09-03     RO-A-MIDAS-3-AST2-LUTE-V1.0
       RENDEZVOUS
                                 2010-09-04     2011-06-07     no data
       MANEUVER 1
       CRUISE 6                  2011-06-08     2014-01-20     no data
       PRELANDING                2014-01-21     2014-11-18     RO-D-MIDAS-3-PRL-SAMPLES-V1.0
       COMET ESCORT 1            2014-11-19     2015-03-10     RO-C-MIDAS-3-ESC1-SAMPLES-V1.0
       COMET ESCORT 2            2015-03-11     2015-06-30     RO-C-MIDAS-3-ESC2-SAMPLES-V1.0
       COMET ESCORT 3            2015-07-01     2015-10-20     RO-C-MIDAS-3-ESC3-SAMPLES-V1.0
       COMET ESCORT 4            2015-10-21     2016-01-12     RO-C-MIDAS-3-ESC4-SAMPLES-V1.0
       ROSETTA EXTENS. 1         2016-01-13     2016-04-05     RO-C-MIDAS-3-EXT1-SAMPLES-V1.0
       ROSETTA EXTENS. 2         2016-04-06     2016-06-28     RO-C-MIDAS-3-EXT2-SAMPLES-V1.0
       ROSETTA EXTENS. 3         2016-06-29     2016-09-30     RO-C-MIDAS-3-EXT3-SAMPLES-V1.0
                                                               Document No.        :   MID-IWF-TN-0087
                    ROSETTA-MIDAS to PSA                       Issue/Rev. No.      :   1.4
                    Interface Control Document                 Date                :   1 April 2016
                                                               Page                :   35


4.2.2 Instrument Mode Definition

     The MIDAS operational concept is based on tasks, rather than on modes. In order to perform a
     scientific observation, several tasks are executed one after the other. Therefore it is not very
     meaningful to describe a full observation (from instrument switch-on to switch-off) with a single
     mode identifier. Nevertheless, two rudimental instrument "modes" have been identified:


       INSTRUMENT_MODE_ID           INSTRUMENT_MODE_DESC
               NORMAL               Data generated by S/W stored in on-board EEPROM.
         MODIFIED_NORMAL            Data generated by temporarily patched on-board S/W.



4.2.3 Data Quality Definition

     The following table lists the data quality identifiers and data quality descriptions used in the
     MIDAS data labels:


         DATA_QUALITY_ID            DATA_QUALITY_DESC
                   -1               Data quality information is not supplied.
                   0                Bad data.
                   1                Use with caution.
                   2                Data ok.



4.2.4 Geometry Information

     The following geometry keywords are used in the MIDAS data labels:


      Geometry Keyword                         Comment
      SC_SUN_POSITION_VECTOR                   "N/A" for ground based data sets.
      SC_TARGET_POSITION_VECTOR                "N/A" for ground based data sets.
      SC_TARGET_VELOCITY_VECTOR                "N/A" for ground based data sets.
      SPACECRAFT_ALTITUDE                      "N/A" for ground based and pre-comet data sets.
      SUB_SPACECRAFT_LATITUDE                  "N/A" for ground based and pre-comet data sets.
      SUB_SPACECRAFT_LONGITUDE                 "N/A" for ground based and pre-comet data sets.
                                                        Document No.      :   MID-IWF-TN-0087
                  ROSETTA-MIDAS to PSA                  Issue/Rev. No.    :   1.4
                  Interface Control Document            Date              :   1 April 2016
                                                        Page              :   36


4.2.5 Mission Specific Keywords

    The following mission specific keywords (namespace ROSETTA) are used in the MIDAS data
    labels:


     Mission Specific Keyword       Data Values             Description
                                                            Position of the linear stage given
                                                            by the linear LVDT position
                                                            sensor. For a description of the
     MIDAS_LIN_STAGE_POS            -9.00 - +9.00 <V>
                                                            relationship between tip number
                                                            and linear stage position see [9],
                                                            chapter 4.2.2.
                                    "DYNAMIC"
     MIDAS_SCANNING_MODE            "CONTACT"               Data acquisition mode.
                                    "MAGNETIC"
                                    "ZS:Z_SET_VAL"
                                    "AC:CANT_AC_MON"
                                    "AR:CANT_AC_RET"
                                    "PH:CANT_PH_MON"
                                    "DC:CANT_DC_MON"
                                    "XH:X_HV_MON"
                                    "YH:Y_HV_MON"
                                    "ZH:Z_HV_MON"           Image scans data type.
                                    "XP:X_POS_MON"
                                                            A detailed description of the
     MIDAS_SCAN_DATA_TYPE           "YP:Y_POS_MON"
                                                            different data types is given in
                                    "ZP:Z_POS_MON"
                                                            chapter 2.5, "Image Scan Data".
                                    "XE:X_ERR_MON"
                                    "YE:Y_ERR_MON"
                                    "ZE:Z_ERR_MON"
                                    "S1:DAQ_STATUS_1"
                                    "S2:DAQ_STATUS_2"
                                    "M1:CANT_AC_MAG1"
                                    "M2:CANT_AC_MAG2"
                                    "M3:CANT_AC_MAG3"
                                                            Main, X and Y image and line
                                    {M,X,Y}
                                                            scan direction. LTOH indicates
                                    M = MAIN_X, MAIN_Y
     MIDAS_SCAN_DIRECTION                                   scans from low to high piezo
                                    X = X_LTOH, X_HTOL
                                                            control voltages (default). HTOL
                                    Y = Y_LTOH, Y_HTOL
                                                            denotes the opposite direction.
                                                            Start coordinates (origin) of an
                                                            image, line or single point scan
                                    (X,Y)
                                                            relative to the X/Y stage origin.
     MIDAS_SCAN_START_XY            X = 0..65535
                                                            The coordinates are given in DAC
                                    Y = 0..65535
                                                            (digital-analogue converter) set
                                                            values.
                                                            End coordinates of an image, line,
                                    (X,Y)
                                                            or single point scan relative to the
     MIDAS_SCAN_STOP_XY             X = 0..65535
                                                            X/Y stage origin. The coordinates
                                    Y = 0..65535
                                                            are given in DAC set values.
                                              Document No.     :   MID-IWF-TN-0087
          ROSETTA-MIDAS to PSA                Issue/Rev. No.   :   1.4
          Interface Control Document          Date             :   1 April 2016
                                              Page             :   37

                                                 Selected scan segment. The
                                                 correlation between target number
MIDAS_SEGMENT_NUMBER        0..1023              and segment number is described
                                                 in chapter 2.5, "Target Utilisation
                                                 History".
                                                 Name of scan target. TGZ02,
                            "TGZ02"
                                                 TGX01 and TGT01 are used for
                            "TGX01"
                                                 (re-)calibration of the scanner
MIDAS_TARGET_NAME           "TGT01"
                                                 head (see chapter 2.5.3). Silicon
                            "SILICON"
                                                 and SOLGEL targets are used for
                            "SOLGEL"
                                                 duct collection.
                                                 Selected scan target. The
                                                 correlation between target number
MIDAS_TARGET_NUMBER         1..64                and segment number is described
                                                 in chapter 2.5, "Target Utilisation
                                                 History".
                            "CALIBRATION"        Type of scan target. Plain silicon
MIDAS_TARGET_TYPE           "PLAIN SILICON"      and SOLGEL coated targets are
                            "SOLGEL COATED"      used for dust collection.
                                                 Selected scan cantilever. For a
                                                 description of the relationship
MIDAS_TIP_NUMBER            1..16                between tip number and linear
                                                 stage position see [9], chapter
                                                 4.2.2.
                                                                Document No.      :   MID-IWF-TN-0087
                      ROSETTA-MIDAS to PSA                      Issue/Rev. No.    :   1.4
                      Interface Control Document                Date              :   1 April 2016
                                                                Page              :   38


4.3   Data Product Design

4.3.1 Data Product Design - Standard Housekeeping Data

      The MIDAS standard housekeeping data files are binary tables containing the plain telemetry
      packets as retrieved from the DDS. Each data file has associated a detached PDS label with the
      same name as the data file it describes, but with the extension .LBL. The data file columns are
      defined in a separate format file referred to by the ^STRUCTURE keyword in the PDS labels:
          *   Data directory:   /DATA/HK1
          *   File naming:      HK1_yydddhh_yydddhh.DAT
          *   File structure:   /LABEL/HK1_STRUCTURE.FMT
      Parameters having a physical representation can be calibrated by applying the OFFSET,
      SCALING_FACTOR and UNIT keywords (defined in the related column object in the format file)
      to the raw value:
          *   physical_value = OFFSET + raw_value*SCALING_FACTOR [UNIT]


      A typical PDS label for a standard housekeeping data file is given below:


      PDS_VERSION_ID                     = PDS3
      LABEL_REVISION_NOTE                = "<LABEL_REVISION_NOTE>"

      RECORD_TYPE                        = FIXED_LENGTH
      RECORD_BYTES                       = 56
      FILE_RECORDS                       = <FILE_RECORDS>

      DATA_SET_ID                        = "<DATA_SET_ID>"
      DATA_SET_NAME                      = "<DATA_SET_NAME>"

      PRODUCT_ID                         =   "<PRODUCT_ID>"
      PRODUCT_VERSION_ID                 =   "<PRODUCT_VERSION_ID>"
      PRODUCT_CREATION_TIME              =   <PRODUCT_CREATION_TIME>
      PRODUCT_TYPE                       =   EDR
      PROCESSING_LEVEL_ID                =   <PROCESSING_LEVEL_ID>

      MISSION_ID                         = ROSETTA
      MISSION_NAME                       = "INTERNATIONAL ROSETTA MISSION"
      MISSION_PHASE_NAME                 = "<MISSION_PHASE_NAME>"

      INSTRUMENT_HOST_ID                 =   <INSTRUMENT_HOST_ID>
      INSTRUMENT_HOST_NAME               =   "<INSTRUMENT_HOST_NAME>"
      INSTRUMENT_ID                      =   <INSTRUMENT_ID>
      INSTRUMENT_NAME                    =   "<INSTRUMENT_NAME>"
      INSTRUMENT_TYPE                    =   "<INSTRUMENT_TYPE>"
      INSTRUMENT_MODE_ID                 =   <INSTRUMENT_MODE_ID>
      INSTRUMENT_MODE_DESC               =   "<INSTRUMENT_MODE_DESC>"

      TARGET_NAME                        = "<TARGET_NAME>"
      TARGET_TYPE                        = "<TARGET_TYPE>"

      START_TIME                         =   <START_TIME>
      STOP_TIME                          =   <STOP_TIME>
      SPACECRAFT_CLOCK_START_COUNT       =   "<START_COUNT>"
      SPACECRAFT_CLOCK_STOP_COUNT        =   "<STOP_COUNT>"
      NATIVE_START_TIME                  =   <NATIVE_START_TIME>
      NATIVE_STOP_TIME                   =   <NATIVE_STOP_TIME>

      PRODUCER_ID                        = "<PRODUCER_ID>"
      PRODUCER_FULL_NAME                 = "<PRODUCER_FULL_NAME>"
      PRODUCER_INSTITUTION_NAME          = "<PRODUCER_INSTITUTION_NAME>"
                                                          Document No.     :   MID-IWF-TN-0087
                ROSETTA-MIDAS to PSA                      Issue/Rev. No.   :   1.4
                Interface Control Document                Date             :   1 April 2016
                                                          Page             :   39


DATA_QUALITY_ID                    = <DATA_QUALITY_ID>
DATA_QUALITY_DESC                  = "<DATA_QUALITY_DESC>"

/* GEOMETRY INFORMATION */

SC_SUN_POSITION_VECTOR             =   <SC_SUN_POSITION_VECTOR>
SC_TARGET_POSITION_VECTOR          =   <SC_TARGET_POSITION_VECTOR>
SC_TARGET_VELOCITY_VECTOR          =   <SC_TARGET_VELOCITY_VECTOR>
SPACECRAFT_ALTITUDE                =   <SPACECRAFT_ALTITUDE>
SUB_SPACECRAFT_LATITUDE            =   <SUB_SPACECRAFT_LATITUDE>
SUB_SPACECRAFT_LONGITUDE           =   <SUB_SPACECRAFT_LONGITUDE>

/* DATA FILE POINTER(S) */

^HK1_TABLE                         = "<FILE_NAME>"

/* DATA OBJECT DEFINITION(S) */

OBJECT                             =   HK1_TABLE
    INTERCHANGE_FORMAT             =   BINARY
    ROWS                           =   <FILE_RECORDS>
    COLUMNS                        =   28
    ROW_BYTES                      =   56
    NAME                           =   "MIDAS standard HK"
    ^STRUCTURE                     =   "HK1_STRUCTURE.FMT"
END_OBJECT                         =   HK1_TABLE

END


The standard housekeeping data file structure is defined as follows:



      /* HK1 FRAME STRUCTURE */

      OBJECT                       =   COLUMN
          NAME                     =   "PACKET_ID"
          DESCRIPTION              =   "Telemetry packet identifier."
          DATA_TYPE                =   MSB_UNSIGNED_INTEGER
          START_BYTE               =   1
          BYTES                    =   2
      END_OBJECT                   =   COLUMN

      OBJECT                       =   COLUMN
          NAME                     =   "PACKET_SEQUENCE_CONTROL"
          DESCRIPTION              =   "Telemetry packet sequence counter."
          DATA_TYPE                =   MSB_UNSIGNED_INTEGER
          START_BYTE               =   3
          BYTES                    =   2
      END_OBJECT                   =   COLUMN

      OBJECT                       =   COLUMN
          NAME                     =   "PACKET_LENGTH"
          DESCRIPTION              =   "Telemetry packet length."
          DATA_TYPE                =   MSB_UNSIGNED_INTEGER
          START_BYTE               =   5
          BYTES                    =   2
      END_OBJECT                   =   COLUMN

      OBJECT                       =   COLUMN
          NAME                     =   "PACKET_OBT_SECONDS"
          DESCRIPTION              =   "S/C clock count at packet generation."
          DATA_TYPE                =   MSB_UNSIGNED_INTEGER
          START_BYTE               =   7
          BYTES                    =   4
      END_OBJECT                   =   COLUMN

      OBJECT                       =   COLUMN
          NAME                     =   "PACKET_OBT_FRACTION"
          DESCRIPTION              =   "Fractional part of S/C clock count."
          DATA_TYPE                =   MSB_UNSIGNED_INTEGER
          START_BYTE               =   11
                                                    Document No.      :   MID-IWF-TN-0087
             ROSETTA-MIDAS to PSA                   Issue/Rev. No.    :   1.4
             Interface Control Document             Date              :   1 April 2016
                                                    Page              :   40

    BYTES                     =2
END_OBJECT                    = COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "PACKET_PUS_AND_CRC"
    DESCRIPTION               =   "Telemetry packet PUS-Version and CRC flag."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   13
    BYTES                     =   1
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "PACKET_TYPE"
    DESCRIPTION               =   "Telemetry packet type."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   14
    BYTES                     =   1
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "PACKET_SUBTYPE"
    DESCRIPTION               =   "Telemetry packet sub-type."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   15
    BYTES                     =   1
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "PACKET_PAD_FIELD"
    DESCRIPTION               =   "Telemetry packet padding field."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   16
    BYTES                     =   1
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "STRUCTURE_ID"
    DESCRIPTION               =   "Telemetry packet structure identifier."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   17
    BYTES                     =   2
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "SOFTWARE_VERSION"
    DESCRIPTION               =   "On-board software version."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   19
    BYTES                     =   2
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "INSTRUMENT_MODE"
    DESCRIPTION               =   "Instrument mode status word."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   21
    BYTES                     =   2
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "BASEPLATE_TEMPERATURE"
    DESCRIPTION               =   "AFM base plate temperature sensor readout."
    DATA_TYPE                 =   MSB_INTEGER
    START_BYTE                =   23
    BYTES                     =   2
    OFFSET                    =   0.0
    SCALING_FACTOR            =   0.01143
    UNIT                      =   KELVIN
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "PREAMPLIFIER_TEMPERATURE"
    DESCRIPTION               =   "Cantilever preamplifier temperature readout."
    DATA_TYPE                 =   MSB_INTEGER
    START_BYTE                =   25
                                                 Document No.     :   MID-IWF-TN-0087
          ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
          Interface Control Document             Date             :   1 April 2016
                                                 Page             :   41

    BYTES                  =   2
    OFFSET                 =   0.0
    SCALING_FACTOR         =   0.01143
    UNIT                   =   KELVIN
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "CONVERTER_TEMPERATURE"
    DESCRIPTION            =   "Power converter temperature readout."
    DATA_TYPE              =   MSB_INTEGER
    START_BYTE             =   27
    BYTES                  =   2
    OFFSET                 =   0.0
    SCALING_FACTOR         =   0.01143
    UNIT                   =   KELVIN
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "CSSC_XREF_TEMPERATURE"
    DESCRIPTION            =   "Capacitive sensor X reference temperature."
    DATA_TYPE              =   MSB_INTEGER
    START_BYTE             =   29
    BYTES                  =   2
    OFFSET                 =   0.0
    SCALING_FACTOR         =   0.01143
    UNIT                   =   KELVIN
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "CSSC_YREF_TEMPERATURE"
    DESCRIPTION            =   "Capacitive sensor Y reference temperature."
    DATA_TYPE              =   MSB_INTEGER
    START_BYTE             =   31
    BYTES                  =   2
    OFFSET                 =   0.0
    SCALING_FACTOR         =   0.01143
    UNIT                   =   KELVIN
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "INLET_TEMPERATURE"
    DESCRIPTION            =   "Temperature measured at the dust inlet."
    DATA_TYPE              =   MSB_INTEGER
    START_BYTE             =   33
    BYTES                  =   2
    OFFSET                 =   0.0
    SCALING_FACTOR         =   0.01143
    UNIT                   =   KELVIN
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "VOLTAGE_MONITOR_P05"
    DESCRIPTION            =   "+5V voltage monitor readout."
    DATA_TYPE              =   MSB_INTEGER
    START_BYTE             =   35
    BYTES                  =   2
    OFFSET                 =   0.0
    SCALING_FACTOR         =   0.00030518
    UNIT                   =   V
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "VOLTAGE_MONITOR_P15"
    DESCRIPTION            =   "+15V voltage monitor readout."
    DATA_TYPE              =   MSB_INTEGER
    START_BYTE             =   37
    BYTES                  =   2
    OFFSET                 =   0.0
    SCALING_FACTOR         =   0.00091706
    UNIT                   =   V
END_OBJECT                 =   COLUMN

OBJECT                     = COLUMN
    NAME                   = "VOLTAGE_MONITOR_N15"
    DESCRIPTION            = "-15V voltage monitor readout."
                                                 Document No.     :   MID-IWF-TN-0087
          ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
          Interface Control Document             Date             :   1 April 2016
                                                 Page             :   42

    DATA_TYPE              =   MSB_INTEGER
    START_BYTE             =   39
    BYTES                  =   2
    OFFSET                 =   0.0
    SCALING_FACTOR         =   0.00091706
    UNIT                   =   V
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "DIGITAL_STATUS_1"
    DESCRIPTION            =   "Digital lines status word #1."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   41
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "DIGITAL_STATUS_2"
    DESCRIPTION            =   "Digital lines status word #2."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   43
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "DIGITAL_STATUS_3"
    DESCRIPTION            =   "Digital lines status word #3."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   45
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "DIGITAL_STATUS_4"
    DESCRIPTION            =   "Digital lines status word #4."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   47
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "DIGITAL_STATUS_5"
    DESCRIPTION            =   "Digital lines status word #5."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   49
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "ADC_OVERFLOW_FLAGS"
    DESCRIPTION            =   "Analog-Digital Converter overflow flags."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   51
    BYTES                  =   4
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "CRC16_CHECKSUM"
    DESCRIPTION            =   "Telemetry packet checksum (CRC 16)."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   55
    BYTES                  =   2
END_OBJECT                 =   COLUMN
                                                             Document No.        :   MID-IWF-TN-0087
                    ROSETTA-MIDAS to PSA                     Issue/Rev. No.      :   1.4
                    Interface Control Document               Date                :   1 April 2016
                                                             Page                :   43


4.3.2 Data Product Design - Extended Housekeeping Data

    The MIDAS extended housekeeping data files are binary tables containing the plain telemetry
    packets as retrieved from the DDS. Each data file has associated a detached PDS label with the
    same name as the data file it describes, but with the extension .LBL. The data file columns are
    defined in a separate format file referred to by the ^STRUCTURE keyword in the PDS labels:
        *   Data directory:   /DATA/HK2
        *   File naming:      HK2_yydddhh_yydddhh.DAT
        *   File structure:   /LABEL/HK2_STRUCTURE.FMT
    Parameters having a physical representation can be calibrated by applying the OFFSET,
    SCALING_FACTOR and UNIT keywords (defined in the related column object in the format file)
    to the raw value:
        *   physical_value = OFFSET + raw_value*SCALING_FACTOR [UNIT]


    A typical PDS label for an extended housekeeping data file is given below:


    PDS_VERSION_ID                    = PDS3
    LABEL_REVISION_NOTE               = "<LABEL_REVISION_NOTE>"

    RECORD_TYPE                       = FIXED_LENGTH
    RECORD_BYTES                      = 524
    FILE_RECORDS                      = <FILE_RECORDS>

    DATA_SET_ID                       = "<DATA_SET_ID>"
    DATA_SET_NAME                     = "<DATA_SET_NAME>"

    PRODUCT_ID                        =   "<PRODUCT_ID>"
    PRODUCT_VERSION_ID                =   "<PRODUCT_VERSION_ID>"
    PRODUCT_CREATION_TIME             =   <PRODUCT_CREATION_TIME>
    PRODUCT_TYPE                      =   EDR
    PROCESSING_LEVEL_ID               =   <PROCESSING_LEVEL_ID>

    MISSION_ID                        = ROSETTA
    MISSION_NAME                      = "INTERNATIONAL ROSETTA MISSION"
    MISSION_PHASE_NAME                = "<MISSION_PHASE_NAME>"

    INSTRUMENT_HOST_ID                =   <INSTRUMENT_HOST_ID>
    INSTRUMENT_HOST_NAME              =   "<INSTRUMENT_HOST_NAME>"
    INSTRUMENT_ID                     =   <INSTRUMENT_ID>
    INSTRUMENT_NAME                   =   "<INSTRUMENT_NAME>"
    INSTRUMENT_TYPE                   =   "<INSTRUMENT_TYPE>"
    INSTRUMENT_MODE_ID                =   <INSTRUMENT_MODE_ID>
    INSTRUMENT_MODE_DESC              =   "<INSTRUMENT_MODE_DESC>"

    TARGET_NAME                       = "<TARGET_NAME>"
    TARGET_TYPE                       = "<TARGET_TYPE>"

    START_TIME                        =   <START_TIME>
    STOP_TIME                         =   <STOP_TIME>
    SPACECRAFT_CLOCK_START_COUNT      =   "<START_COUNT>"
    SPACECRAFT_CLOCK_STOP_COUNT       =   "<STOP_COUNT>"
    NATIVE_START_TIME                 =   <NATIVE_START_TIME>
    NATIVE_STOP_TIME                  =   <NATIVE_STOP_TIME>

    PRODUCER_ID                       = "<PRODUCER_ID>"
    PRODUCER_FULL_NAME                = "<PRODUCER_FULL_NAME>"
    PRODUCER_INSTITUTION_NAME         = "<PRODUCER_INSTITUTION_NAME>"

    DATA_QUALITY_ID                   = <DATA_QUALITY_ID>
    DATA_QUALITY_DESC                 = "<DATA_QUALITY_DESC>"
                                                         Document No.     :   MID-IWF-TN-0087
                ROSETTA-MIDAS to PSA                     Issue/Rev. No.   :   1.4
                Interface Control Document               Date             :   1 April 2016
                                                         Page             :   44


/* GEOMETRY INFORMATION */

SC_SUN_POSITION_VECTOR            =   <SC_SUN_POSITION_VECTOR>
SC_TARGET_POSITION_VECTOR         =   <SC_TARGET_POSITION_VECTOR>
SC_TARGET_VELOCITY_VECTOR         =   <SC_TARGET_VELOCITY_VECTOR>
SPACECRAFT_ALTITUDE               =   <SPACECRAFT_ALTITUDE>
SUB_SPACECRAFT_LATITUDE           =   <SUB_SPACECRAFT_LATITUDE>
SUB_SPACECRAFT_LONGITUDE          =   <SUB_SPACECRAFT_LONGITUDE>

/* DATA FILE POINTER(S) */

^HK2_TABLE                        = "<FILE_NAME>"

/* DATA OBJECT DEFINITION(S) */

OBJECT                            =   HK2_TABLE
    INTERCHANGE_FORMAT            =   BINARY
    ROWS                          =   <FILE_RECORDS>
    COLUMNS                       =   259
    ROW_BYTES                     =   524
    NAME                          =   "MIDAS extended HK"
    ^STRUCTURE                    =   "HK2_STRUCTURE.FMT"
END_OBJECT                        =   HK2_TABLE

END


The extended housekeeping data file structure is defined as follows:



      /* HK2 FRAME STRUCTURE */

      OBJECT                      =   COLUMN
          NAME                    =   "PACKET_ID"
          DESCRIPTION             =   "Telemetry packet identifier."
          DATA_TYPE               =   MSB_UNSIGNED_INTEGER
          START_BYTE              =   1
          BYTES                   =   2
      END_OBJECT                  =   COLUMN

      OBJECT                      =   COLUMN
          NAME                    =   "PACKET_SEQUENCE_CONTROL"
          DESCRIPTION             =   "Telemetry packet sequence counter."
          DATA_TYPE               =   MSB_UNSIGNED_INTEGER
          START_BYTE              =   3
          BYTES                   =   2
      END_OBJECT                  =   COLUMN

      OBJECT                      =   COLUMN
          NAME                    =   "PACKET_LENGTH"
          DESCRIPTION             =   "Telemetry packet length."
          DATA_TYPE               =   MSB_UNSIGNED_INTEGER
          START_BYTE              =   5
          BYTES                   =   2
      END_OBJECT                  =   COLUMN

      OBJECT                      =   COLUMN
          NAME                    =   "PACKET_OBT_SECONDS"
          DESCRIPTION             =   "S/C clock count at packet generation."
          DATA_TYPE               =   MSB_UNSIGNED_INTEGER
          START_BYTE              =   7
          BYTES                   =   4
      END_OBJECT                  =   COLUMN

      OBJECT                      =   COLUMN
          NAME                    =   "PACKET_OBT_FRACTION"
          DESCRIPTION             =   "Fractional part of S/C clock count."
          DATA_TYPE               =   MSB_UNSIGNED_INTEGER
          START_BYTE              =   11
          BYTES                   =   2
      END_OBJECT                  =   COLUMN
                                                 Document No.       :   MID-IWF-TN-0087
          ROSETTA-MIDAS to PSA                   Issue/Rev. No.     :   1.4
          Interface Control Document             Date               :   1 April 2016
                                                 Page               :   45

OBJECT                     =   COLUMN
    NAME                   =   "PACKET_PUS_AND_CRC"
    DESCRIPTION            =   "Telemetry packet PUS-Version and CRC flag."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   13
    BYTES                  =   1
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "PACKET_TYPE"
    DESCRIPTION            =   "Telemetry packet type."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   14
    BYTES                  =   1
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "PACKET_SUBTYPE"
    DESCRIPTION            =   "Telemetry packet sub-type."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   15
    BYTES                  =   1
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "PACKET_PAD_FIELD"
    DESCRIPTION            =   "Telemetry packet padding field."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   16
    BYTES                  =   1
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "STRUCTURE_ID"
    DESCRIPTION            =   "Telemetry packet structure identifier."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   17
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "SOFTWARE_VERSION"
    DESCRIPTION            =   "On-board software version."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   19
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "U_CAN_RMS"
    DESCRIPTION            =   "Cantilever AC signal readout."
    DATA_TYPE              =   MSB_INTEGER
    START_BYTE             =   21
    BYTES                  =   2
    OFFSET                 =   1.52590E-004
    SCALING_FACTOR         =   3.05180E-004
    UNIT                   =   V
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "U_CAN_AMP_DC"
    DESCRIPTION            =   "Cantilever DC signal readout."
    DATA_TYPE              =   MSB_INTEGER
    START_BYTE             =   23
    BYTES                  =   2
    OFFSET                 =   1.52590E-004
    SCALING_FACTOR         =   3.05180E-004
    UNIT                   =   V
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "U_CAN_PHASE"
    DESCRIPTION            =   "Cantilever phase signal readout."
    DATA_TYPE              =   MSB_INTEGER
    START_BYTE             =   25
                                                 Document No.     :   MID-IWF-TN-0087
          ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
          Interface Control Document             Date             :   1 April 2016
                                                 Page             :   46

    BYTES                  =   2
    OFFSET                 =   2.74662E-003
    SCALING_FACTOR         =   5.49325E-003
    UNIT                   =   deg
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "APP_POS_MON"
    DESCRIPTION            =   "Approach position sensor readout."
    DATA_TYPE              =   MSB_INTEGER
    START_BYTE             =   27
    BYTES                  =   2
    OFFSET                 =   1.52590E-004
    SCALING_FACTOR         =   3.05180E-004
    UNIT                   =   V
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "LIN_POS_MON"
    DESCRIPTION            =   "Linear stage position sensor readout."
    DATA_TYPE              =   MSB_INTEGER
    START_BYTE             =   29
    BYTES                  =   2
    OFFSET                 =   1.52590E-004
    SCALING_FACTOR         =   3.05180E-004
    UNIT                   =   V
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "X_PR_OUT"
    DESCRIPTION            =   "X piezo control loop offset error readout."
    DATA_TYPE              =   MSB_INTEGER
    START_BYTE             =   31
    BYTES                  =   2
    OFFSET                 =   1.52590E-004
    SCALING_FACTOR         =   3.05180E-004
    UNIT                   =   V
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "Y_PR_OUT"
    DESCRIPTION            =   "Y piezo control loop offset error readout."
    DATA_TYPE              =   MSB_INTEGER
    START_BYTE             =   33
    BYTES                  =   2
    OFFSET                 =   1.52590E-004
    SCALING_FACTOR         =   3.05180E-004
    UNIT                   =   V
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "Z_PR_OUT"
    DESCRIPTION            =   "Z piezo control loop offset error readout."
    DATA_TYPE              =   MSB_INTEGER
    START_BYTE             =   35
    BYTES                  =   2
    OFFSET                 =   1.52590E-004
    SCALING_FACTOR         =   3.05180E-004
    UNIT                   =   V
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "XPIEZO_VSENS_OUT"
    DESCRIPTION            =   "X piezo high voltage monitor readout."
    DATA_TYPE              =   MSB_INTEGER
    START_BYTE             =   37
    BYTES                  =   2
    OFFSET                 =   1.00002E+002
    SCALING_FACTOR         =   4.27253E-003
    UNIT                   =   V
END_OBJECT                 =   COLUMN

OBJECT                     = COLUMN
    NAME                   = "YPIEZO_VSENS_OUT"
    DESCRIPTION            = "Y piezo high voltage monitor readout."
                                                     Document No.       :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                   Issue/Rev. No.     :   1.4
              Interface Control Document             Date               :   1 April 2016
                                                     Page               :   47

       DATA_TYPE               =   MSB_INTEGER
       START_BYTE              =   39
       BYTES                   =   2
       OFFSET                  =   1.00002E+002
       SCALING_FACTOR          =   4.27253E-003
       UNIT                    =   V
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "XPIEZO_POS"
       DESCRIPTION             =   "X piezo position sensor readout."
       DATA_TYPE               =   MSB_INTEGER
       START_BYTE              =   41
       BYTES                   =   2
       OFFSET                  =   1.52590E-004
       SCALING_FACTOR          =   3.05180E-004
       UNIT                    =   V
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "YPIEZO_POS"
       DESCRIPTION             =   "Y piezo position sensor readout."
       DATA_TYPE               =   MSB_INTEGER
       START_BYTE              =   43
       BYTES                   =   2
       OFFSET                  =   1.52590E-004
       SCALING_FACTOR          =   3.05180E-004
       UNIT                    =   V
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "ZPIEZO_POS"
       DESCRIPTION             =   "Z piezo position sensor readout."
       DATA_TYPE               =   MSB_INTEGER
       START_BYTE              =   45
       BYTES                   =   2
       OFFSET                  =   1.52590E-004
       SCALING_FACTOR          =   3.05180E-004
       UNIT                    =   V
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "ZPIEZO_VSENS_OUT"
       DESCRIPTION             =   "Z piezo high voltage monitor readout."
       DATA_TYPE               =   MSB_INTEGER
       START_BYTE              =   47
       BYTES                   =   2
       OFFSET                  =   1.00002E+002
       SCALING_FACTOR          =   4.27253E-003
       UNIT                    =   V
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "ABORT_FULLSCAN"
        DESCRIPTION            = "Flag, set if ABORT command was sent during a full
scan."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   49
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "ABORT_FUNCTION"
        DESCRIPTION            = "Flag, set if ABORT command was sent during an active
task."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   51
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "ABORT_LINE"
        DESCRIPTION            = "Flag, set if Z DAC value reached its lower limit (-
10V)."
        DATA_TYPE              = MSB_UNSIGNED_INTEGER
                                                     Document No.     :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
              Interface Control Document             Date             :   1 April 2016
                                                     Page             :   48

       START_BYTE              = 53
       BYTES                   =2
   END_OBJECT                  = COLUMN

    OBJECT                     = COLUMN
        NAME                   = "ABORT_POINT"
        DESCRIPTION            = "Flag, set if Z DAC value reached its upper limit
(+10V)."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   55
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "AC_GAIN"
       DESCRIPTION             =   "Gain level for cantilever AC signal amplifier (0-7)."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   57
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "APPR_BACKW_STARTED"
       DESCRIPTION             =   "Flag, set if backward approach task is active."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   59
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "APPR_FINISHED"
        DESCRIPTION            = "Flag, set if segment surface was detected during
forward approach."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   61
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "APPR_FINE_STEP"
       DESCRIPTION             =   "Flag, set if fine steps are applied during approach."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   63
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "APPR_ON_MAX_POS"
        DESCRIPTION            = "Flag, set if max. position was reached during an
approach task."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   65
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "APPR_ON_MIN_POS"
        DESCRIPTION            = "Flag, set if min. position was reached during an
approach task."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   67
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "APPR_POSITION"
        DESCRIPTION            = "Approach position sensor readout during an approach
task."
        DATA_TYPE              =   MSB_INTEGER
        START_BYTE             =   69
        BYTES                  =   2
        OFFSET                 =   1.52590E-004
        SCALING_FACTOR         =   3.05180E-004
        UNIT                   =   V
    END_OBJECT                 =   COLUMN
                                                     Document No.     :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
              Interface Control Document             Date             :   1 April 2016
                                                     Page             :   49


    OBJECT                     = COLUMN
        NAME                   = "APPR_POS_SET"
        DESCRIPTION            = "Approach position set value for next forward approach
step."
        DATA_TYPE              =   MSB_INTEGER
        START_BYTE             =   71
        BYTES                  =   2
        OFFSET                 =   1.52590E-004
        SCALING_FACTOR         =   3.05180E-004
        UNIT                   =   V
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "APPR_STARTED"
       DESCRIPTION             =   "Flag, set if forward approach task is active."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   73
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "APPR_POS_ABS"
        DESCRIPTION            = "Approach position set value for absolute approach
movement."
        DATA_TYPE              =   MSB_INTEGER
        START_BYTE             =   75
        BYTES                  =   2
        OFFSET                 =   1.52590E-004
        SCALING_FACTOR         =   3.05180E-004
        UNIT                   =   V
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "APPR_DIR"
       DESCRIPTION             =   "Flag, set if approach direction is towards surface."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   77
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "APPR_ABS_STARTED"
        DESCRIPTION            = "Flag, set if absolute approach positioning task is
active."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   79
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "APPR_TIMO_CNT"
        DESCRIPTION            = "Holds remaining seconds until approach timeout
occurs."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   81
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "AVERAGE"
        DESCRIPTION            = "Average factor for Z strain gauge signal
measurement."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   83
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "CANTILEVER"
        DESCRIPTION            = "Selected cantilever of current cantilever block (0-
7)."
        DATA_TYPE              = MSB_UNSIGNED_INTEGER
        START_BYTE             = 85
        BYTES                  =2
                                                       Document No.     :   MID-IWF-TN-0087
                ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
                Interface Control Document             Date             :   1 April 2016
                                                       Page             :   50

   END_OBJECT                    = COLUMN

   OBJECT                        =   COLUMN
       NAME                      =   "CANT_BLOCK"
       DESCRIPTION               =   "Number of selected cantilever block (1 or 2)."
       DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
       START_BYTE                =   87
       BYTES                     =   2
   END_OBJECT                    =   COLUMN

   OBJECT                        =   COLUMN
       NAME                      =   "CANT_SIGNAL"
       DESCRIPTION               =   "Current cantilever signal measured during scan."
       DATA_TYPE                 =   MSB_INTEGER
       START_BYTE                =   89
       BYTES                     =   2
       OFFSET                    =   1.52590E-004
       SCALING_FACTOR            =   3.05180E-004
       UNIT                      =   V
   END_OBJECT                    =   COLUMN

    OBJECT                       = COLUMN
        NAME                     = "CAL_X_CYCLE_STARTED"
        DESCRIPTION              = "Flag, set if X position sensor calibration task has
started."
        DATA_TYPE                =   MSB_UNSIGNED_INTEGER
        START_BYTE               =   91
        BYTES                    =   2
    END_OBJECT                   =   COLUMN

    OBJECT                       = COLUMN
        NAME                     = "CAL_X_CYCLE_FINISHED"
        DESCRIPTION              = "Flag, set if X position sensor calibration task has
completed successfully."
        DATA_TYPE                =   MSB_UNSIGNED_INTEGER
        START_BYTE               =   93
        BYTES                    =   2
    END_OBJECT                   =   COLUMN

    OBJECT                       = COLUMN
        NAME                     = "CAL_Y_CYCLE_STARTED"
        DESCRIPTION              = "Flag, set if Y position sensor calibration task has
started."
        DATA_TYPE                =   MSB_UNSIGNED_INTEGER
        START_BYTE               =   95
        BYTES                    =   2
    END_OBJECT                   =   COLUMN

    OBJECT                       = COLUMN
        NAME                     = "CAL_Y_CYCLE_FINISHED"
        DESCRIPTION              = "Flag, set if Y position sensor calibration task has
completed successfully."
        DATA_TYPE                =   MSB_UNSIGNED_INTEGER
        START_BYTE               =   97
        BYTES                    =   2
    END_OBJECT                   =   COLUMN

   OBJECT                        =   COLUMN
       NAME                      =   "CAP_SENS_EN"
       DESCRIPTION               =   "Flag, set if X/Y position sensor control is enabled."
       DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
       START_BYTE                =   99
       BYTES                     =   2
   END_OBJECT                    =   COLUMN

   OBJECT                        =   COLUMN
       NAME                      =   "CAL_CYCLES"
       DESCRIPTION               =   "X/Y position sensor calibration cycle counter."
       DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
       START_BYTE                =   101
       BYTES                     =   2
   END_OBJECT                    =   COLUMN

   OBJECT                        = COLUMN
       NAME                      = "CALIB_TIMO_CNT"
                                                     Document No.     :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
              Interface Control Document             Date             :   1 April 2016
                                                     Page             :   51

        DESCRIPTION            = "Holds remaining seconds until X/Y position sensor
calibration timeout occurs."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   103
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "COR_TAB"
        DESCRIPTION            = "Selected correction table (0=norm temp, 1=high temp,
2=low temp)."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   105
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "CO_CMD"
        DESCRIPTION            = "Last checkout (technical) command which has been
executed on-board."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   107
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "CUR_LIN_POS"
        DESCRIPTION            = "Current linear position sensor value measured during
linear stage movement."
        DATA_TYPE              =   MSB_INTEGER
        START_BYTE             =   109
        BYTES                  =   2
        OFFSET                 =   1.52590E-004
        SCALING_FACTOR         =   3.05180E-004
        UNIT                   =   V
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "CYCLES"
        DESCRIPTION            = "Holds number of Z increments and decrements during
single point scan."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   111
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "DATA_TYPE"
        DESCRIPTION            = "Image scan data type (0=z-topography, 1=z-error,
...)."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   113
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "DC_GAIN"
       DESCRIPTION             =   "Gain level for cantilever DC signal amplifier (0-7)."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   115
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "DC_PULSEWIDTH"
       DESCRIPTION             =   "Approach DC motor pulse width set value."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   117
       BYTES                   =   2
       OFFSET                  =   2.10000E+001
       SCALING_FACTOR          =   4.20000E+001
       UNIT                    =   usec
   END_OBJECT                  =   COLUMN

   OBJECT                      = COLUMN
                                                     Document No.     :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
              Interface Control Document             Date             :   1 April 2016
                                                     Page             :   52

       NAME                    =   "DECR_APPR_POS"
       DESCRIPTION             =   "Flag, set if approach advances to next position."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   119
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "DSCAN_RAND_AMPL"
       DESCRIPTION             =   "Dummy scan random noise amplitude set value."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   121
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "DELTA_APPR_POS"
        DESCRIPTION            = "Approach position signal decrement used in coarse
approach steps."
        DATA_TYPE              =   MSB_INTEGER
        START_BYTE             =   123
        BYTES                  =   2
        OFFSET                 =   1.52590E-004
        SCALING_FACTOR         =   3.05180E-004
        UNIT                   =   V
    END_OBJECT                 =   COLUMN

    OBJECT                      = COLUMN
        NAME                    = "DELTA_OP_PERC"
        DESCRIPTION             = "Allowed deviation from cantilever signal operating
point in % of resonance amplitude."
        DATA_TYPE               = MSB_UNSIGNED_INTEGER
        START_BYTE              = 125
        BYTES                   =2
        OFFSET                  = 0.00000E+000
        SCALING_FACTOR          = 1.52590E-003
    END_OBJECT                  = COLUMN

    OBJECT                     = COLUMN
        NAME                   = "DELTA_OP_AMPL"
        DESCRIPTION            = "Allowed deviation from cantilever signal operating
point (calculated)."
        DATA_TYPE              =   MSB_INTEGER
        START_BYTE             =   127
        BYTES                  =   2
        OFFSET                 =   1.52590E-004
        SCALING_FACTOR         =   3.05180E-004
        UNIT                   =   V
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "DUMMY_FULL_SCAN"
       DESCRIPTION             =   "Flag, set if dummy image scan task is active."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   129
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "EXC_LEV"
       DESCRIPTION             =   "Gain level for cantilever excitation (0-7)."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   131
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "DSCAN_SINE_AMPL"
       DESCRIPTION             =   "Dummy scan sine amplitude set value."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   133
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

   OBJECT                      = COLUMN
                                                     Document No.     :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
              Interface Control Document             Date             :   1 April 2016
                                                     Page             :   53

       NAME                    =   "DSCAN_ZERO_OFFS"
       DESCRIPTION             =   "Dummy scan zero offset set value."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   135
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "DSCAN_GRAD_SINE"
       DESCRIPTION             =   "Dummy scan X/Y gradient and sine period set value."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   137
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "F_SCAN_NO_THRES"
        DESCRIPTION            = "Flag, set if threshold amplitude has not been found
during frequency scan."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   139
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "F_SCAN_CYCLE"
        DESCRIPTION            = "Current scan cycle of the automatic frequency scan
task."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   141
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "APPR_STUCK_CNT"
        DESCRIPTION            = "Number of times the approach stuck event will be
ignored."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   143
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "F_SCAN_STARTED"
        DESCRIPTION            = "Flag, set if the automatic frequency scan task is
active."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   145
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "F_SCAN_FINISHED"
        DESCRIPTION            = "Flag, set if the automatic frequency scan task has
completed."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   147
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "F_STEP"
       DESCRIPTION             =   "Nominal frequency scan step increment."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   149
       BYTES                   =   2
       OFFSET                  =   0.00000E+000
       SCALING_FACTOR          =   6.98253E-004
       UNIT                    =   Hz
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "F_STEP_HI"
        DESCRIPTION            = "Frequency scan step increment for threshold
detection."
                                                     Document No.     :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
              Interface Control Document             Date             :   1 April 2016
                                                     Page             :   54

       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   151
       BYTES                   =   2
       OFFSET                  =   0.00000E+000
       SCALING_FACTOR          =   6.98253E-004
       UNIT                    =   Hz
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "FULLSCAN_STARTED"
       DESCRIPTION             =   "Flag, set if the image scan task is active."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   153
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "GAIN_STEP"
        DESCRIPTION            = "Gain control increment/decrement for X/Y position
sensor calibration."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   155
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "HK2_PERIOD"
       DESCRIPTION             =   "Extended HK report update period in seconds."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   157
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "LAST_TC"
        DESCRIPTION            = "Last received private telecommand (MSB=type,
LSB=subtype)."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   159
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "LIN_MOVE_STARTED"
       DESCRIPTION             =   "Flag, set if a linear stage movement task is active."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   161
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "LIN_MOVE_FINISHED"
        DESCRIPTION            = "Flag, set if a linear stage movement task has
completed."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   163
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "TEST_LIN_LVDT"
        DESCRIPTION            = "Flag, set if linear stage position sensor is
evaluated during task."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   165
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "LINE_SCAN_CNT"
       DESCRIPTION             =   "Number of scanned image lines so far."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   167
       BYTES                   =   2
   END_OBJECT                  =   COLUMN
                                                     Document No.     :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
              Interface Control Document             Date             :   1 April 2016
                                                     Page             :   55


   OBJECT                      =   COLUMN
       NAME                    =   "LINE_NUM_STEPS"
       DESCRIPTION             =   "Total number of image lines to be scanned."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   169
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "LINESCAN_DONE"
       DESCRIPTION             =   "Flag, set if the line scan task has completed."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   171
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "LINESCAN_STARTED"
       DESCRIPTION             =   "Flag, set if the line scan task is active."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   173
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "LINMOVE_TIMO_CNT"
        DESCRIPTION            = "Holds remaining seconds until linear stage timeout
occurs."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   175
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "LINMOVE_TIMO"
       DESCRIPTION             =   "Linear stage movement timeout set value."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   177
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "MAIN_SCAN_CNT"
        DESCRIPTION            = "Number of scanned pixels in main scan direction
(within line) so far."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   179
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "MAIN_SCAN_DIR"
       DESCRIPTION             =   "Main dummy/image/line scan direction (0=X, 1=Y)."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   181
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "MAIN_NUM_STEPS"
       DESCRIPTION             =   "Total number of pixels in main scan direction."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   183
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "MAGN_RETRACT_DIST"
       DESCRIPTION             =   "Z retraction distance for magnetic mode."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   185
       BYTES                   =   2
   END_OBJECT                  =   COLUMN
                                                     Document No.     :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
              Interface Control Document             Date             :   1 April 2016
                                                     Page             :   56

    OBJECT                     = COLUMN
        NAME                   = "MSUB_CYCLES"
        DESCRIPTION            = "Maximum number of scan cycles per single_point()
function call."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   187
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "MAX_CYCLES"
        DESCRIPTION            = "Maximum number of scan cycles allowed for a single
point."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   189
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "MAX_CAL_CYCLES"
        DESCRIPTION            = "Maximum number of X/Y position sensor calibration
cycles."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   191
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "LAST_APPR_DIR"
        DESCRIPTION            = "Approach movement direction during last approach
task."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   193
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "NO_OF_FSCANS"
        DESCRIPTION            = "Number of frequency sweep cycles for the automatic
frequency scan."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   195
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "OFFS_STEP"
        DESCRIPTION            = "Offset control increment/decrement for X/Y position
sensor calibration."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   197
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                      = COLUMN
        NAME                    = "OP_POINT_PERC"
        DESCRIPTION             = "Threshold value of cantilever signal in % of
resonance amplitude for data acquisition."
        DATA_TYPE               = MSB_UNSIGNED_INTEGER
        START_BYTE              = 199
        BYTES                   =2
        OFFSET                  = 0.00000E+000
        SCALING_FACTOR          = 1.52590E-003
    END_OBJECT                  = COLUMN

    OBJECT                     = COLUMN
        NAME                   = "OP_POINT_AMPL"
        DESCRIPTION            = "Threshold value of cantilever signal for data
acquisition (calculated)."
        DATA_TYPE              =   MSB_INTEGER
        START_BYTE             =   201
        BYTES                  =   2
        OFFSET                 =   1.52590E-004
        SCALING_FACTOR         =   3.05180E-004
        UNIT                   =   V
                                                       Document No.      :   MID-IWF-TN-0087
                ROSETTA-MIDAS to PSA                   Issue/Rev. No.    :   1.4
                Interface Control Document             Date              :   1 April 2016
                                                       Page              :   57

   END_OBJECT                    = COLUMN

    OBJECT                       = COLUMN
        NAME                     = "OP_UP"
        DESCRIPTION              = "Cantilever signal threshold value upper limit
(calculated)."
        DATA_TYPE                =   MSB_INTEGER
        START_BYTE               =   203
        BYTES                    =   2
        OFFSET                   =   1.52590E-004
        SCALING_FACTOR           =   3.05180E-004
        UNIT                     =   V
    END_OBJECT                   =   COLUMN

    OBJECT                       = COLUMN
        NAME                     = "OP_LO"
        DESCRIPTION              = "Cantilever signal threshold value lower limit
(calculated)."
        DATA_TYPE                =   MSB_INTEGER
        START_BYTE               =   205
        BYTES                    =   2
        OFFSET                   =   1.52590E-004
        SCALING_FACTOR           =   3.05180E-004
        UNIT                     =   V
    END_OBJECT                   =   COLUMN

    OBJECT                      = COLUMN
        NAME                    = "PERCENT_OP_AMPL"
        DESCRIPTION             = "% of resonance amplitude at which to set the
operating frequency (+=right, -=left)."
        DATA_TYPE               = MSB_INTEGER
        START_BYTE              = 207
        BYTES                   =2
        OFFSET                  = 1.52590E-003
        SCALING_FACTOR          = 3.05180E-003
    END_OBJECT                  = COLUMN

   OBJECT                        =   COLUMN
       NAME                      =   "PARAMETER"
       DESCRIPTION               =   "Parameter part of last executed parameter command."
       DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
       START_BYTE                =   209
       BYTES                     =   2
   END_OBJECT                    =   COLUMN

   OBJECT                        =   COLUMN
       NAME                      =   "PARAMETER_CMD"
       DESCRIPTION               =   "Command code of last executed parameter command."
       DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
       START_BYTE                =   211
       BYTES                     =   2
   END_OBJECT                    =   COLUMN

   OBJECT                        =   COLUMN
       NAME                      =   "PULSE_DELAY"
       DESCRIPTION               =   "Pulse delay mode for linear stage motor (0-3)."
       DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
       START_BYTE                =   213
       BYTES                     =   2
   END_OBJECT                    =   COLUMN

   OBJECT                        =   COLUMN
       NAME                      =   "PULSEWIDTH"
       DESCRIPTION               =   "Piezo motor driver pulse width."
       DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
       START_BYTE                =   215
       BYTES                     =   2
       OFFSET                    =   2.10000E+001
       SCALING_FACTOR            =   4.20000E+001
       UNIT                      =   usec
   END_OBJECT                    =   COLUMN

   OBJECT                        = COLUMN
       NAME                      = "REF_SEARCH_STARTED"
                                                     Document No.     :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
              Interface Control Document             Date             :   1 April 2016
                                                     Page             :   58

        DESCRIPTION            = "Flag, set if wheel reference point search has
started."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   217
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "RELAY_STATUS"
       DESCRIPTION             =   "Power relay status flags."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   219
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "RESONANCE_AMPL"
       DESCRIPTION             =   "Cantilever signal amplitude at resonance frequency."
       DATA_TYPE               =   MSB_INTEGER
       START_BYTE              =   221
       BYTES                   =   2
       OFFSET                  =   1.52590E-004
       SCALING_FACTOR          =   3.05180E-004
       UNIT                    =   V
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "RETRACT_DIST"
       DESCRIPTION             =   "Z retraction before advancing to next scan position."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   223
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "SCAN_MODE"
       DESCRIPTION             =   "Scanning mode (0=dynamic, 1=contact, 2=magnetic)."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   225
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "SCAN_ERROR_CNT"
        DESCRIPTION            = "Holds the number of pixels where the max. number of
scan cycles was exceeded."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   227
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "SEARCH_ALGOR"
       DESCRIPTION             =   "Cantilever resonance frequency search mode."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   229
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "SEND_CO_FR"
       DESCRIPTION             =   "Flag, set if checkout frame is sent periodically."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   231
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "DST_SELECT"
        DESCRIPTION            = "Data set selection for cleanup/transfer (bit 15 =
oldest, bit 14 = newest)."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   233
        BYTES                  =   2
    END_OBJECT                 =   COLUMN
                                                     Document No.     :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
              Interface Control Document             Date             :   1 April 2016
                                                     Page             :   59


   OBJECT                      =   COLUMN
       NAME                    =   "SEGMENT_PULSES"
       DESCRIPTION             =   "Wheel encoder ticks for segment selection."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   235
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "SEGMENT_SEARCH_STARTED"
       DESCRIPTION             =   "Flag, set if segment search task is active."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   237
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "SEGMENT_FOUND"
        DESCRIPTION            = "Flag, set if the wheel segment search has completed
successfully."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   239
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "SEGMENT_NO"
       DESCRIPTION             =   "Wheel segment selection set value (0-1023)."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   241
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "SET_LIN_POS"
        DESCRIPTION            = "Linear stage position sensor value for absolute
positioning (calculated)."
        DATA_TYPE              =   MSB_INTEGER
        START_BYTE             =   243
        BYTES                  =   2
        OFFSET                 =   1.52590E-004
        SCALING_FACTOR         =   3.05180E-004
        UNIT                   =   V
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "SET_LIN_POS_ABS"
        DESCRIPTION            = "Linear stage position sensor set value for absolute
positioning."
        DATA_TYPE              =   MSB_INTEGER
        START_BYTE             =   245
        BYTES                  =   2
        OFFSET                 =   1.52590E-004
        SCALING_FACTOR         =   3.05180E-004
        UNIT                   =   V
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "REGULAR_EXT_CODE"
        DESCRIPTION            = "Flag, set if the extended program code area is
entered every millisecond."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   247
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "SHUT_CLOSE_STARTED"
       DESCRIPTION             =   "Flag, set if the shutter closing task is active."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   249
       BYTES                   =   2
   END_OBJECT                  =   COLUMN
                                                     Document No.     :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
              Interface Control Document             Date             :   1 April 2016
                                                     Page             :   60

   OBJECT                      =   COLUMN
       NAME                    =   "SHUT_OPEN_STARTED"
       DESCRIPTION             =   "Flag, set if the shutter opening task is active."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   251
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "SHUTTER_TIMO_CNT"
        DESCRIPTION            = "Holds remaining seconds until a shutter movement
timeout occurs."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   253
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "SINGLE_F_SCAN"
       DESCRIPTION             =   "Flag, set if the single frequency scan is active."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   255
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "SURF_DETECTED"
       DESCRIPTION             =   "Flag, set if surface was detected during approach."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   257
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "TECH_MODE"
       DESCRIPTION             =   "Flag, set if technical mode commands are enabled."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   259
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "TIMEOUTS"
       DESCRIPTION             =   "Timeout status flags."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   261
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "TIP_NO"
       DESCRIPTION             =   "Cantilever selection set value (0-15)."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   263
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "U_MAX"
        DESCRIPTION            = "Maximum cantilever signal amplitude detected during
frequency scan so far."
        DATA_TYPE              =   MSB_INTEGER
        START_BYTE             =   265
        BYTES                  =   2
        OFFSET                 =   1.52590E-004
        SCALING_FACTOR         =   3.05180E-004
        UNIT                   =   V
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "VREF_ACC"
       DESCRIPTION             =   "X/Y position sensor calibration accuracy."
       DATA_TYPE               =   MSB_INTEGER
       START_BYTE              =   267
       BYTES                   =   2
                                                     Document No.     :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
              Interface Control Document             Date             :   1 April 2016
                                                     Page             :   61

       OFFSET                  =   1.52590E-004
       SCALING_FACTOR          =   3.05180E-004
       UNIT                    =   V
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "VXREF1"
       DESCRIPTION             =   "X position sensor reference voltage 1."
       DATA_TYPE               =   MSB_INTEGER
       START_BYTE              =   269
       BYTES                   =   2
       OFFSET                  =   1.52590E-004
       SCALING_FACTOR          =   3.05180E-004
       UNIT                    =   V
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "VXREF2"
       DESCRIPTION             =   "X position sensor reference voltage 2."
       DATA_TYPE               =   MSB_INTEGER
       START_BYTE              =   271
       BYTES                   =   2
       OFFSET                  =   1.52590E-004
       SCALING_FACTOR          =   3.05180E-004
       UNIT                    =   V
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "VYREF1"
       DESCRIPTION             =   "Y position sensor reference voltage 1."
       DATA_TYPE               =   MSB_INTEGER
       START_BYTE              =   273
       BYTES                   =   2
       OFFSET                  =   1.52590E-004
       SCALING_FACTOR          =   3.05180E-004
       UNIT                    =   V
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "VYREF2"
       DESCRIPTION             =   "Y position sensor reference voltage 2."
       DATA_TYPE               =   MSB_INTEGER
       START_BYTE              =   275
       BYTES                   =   2
       OFFSET                  =   1.52590E-004
       SCALING_FACTOR          =   3.05180E-004
       UNIT                    =   V
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "WAIT_CYCLE"
       DESCRIPTION             =   "Flag, set if a wait cycle is active."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   277
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "WAITING_TIME"
        DESCRIPTION            = "Holds number of seconds until the wait cycle
completes."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   279
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                      = COLUMN
        NAME                    = "WAX_ACTUATOR"
        DESCRIPTION             = "AFM base plate lock mechanism actuator selection
(0=actuator 1, 1= actuator 2)."
        DATA_TYPE               = MSB_UNSIGNED_INTEGER
        START_BYTE              = 281
        BYTES                   =2
    END_OBJECT                  = COLUMN
                                                      Document No.     :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                    Issue/Rev. No.   :   1.4
              Interface Control Document              Date             :   1 April 2016
                                                      Page             :   62

    OBJECT                      = COLUMN
        NAME                    = "WAXACT_TIMO_CNT"
        DESCRIPTION             = "Holds number of seconds until a base plate release
task timeout occurs."
        DATA_TYPE               =   MSB_UNSIGNED_INTEGER
        START_BYTE              =   283
        BYTES                   =   2
    END_OBJECT                  =   COLUMN

    OBJECT                      = COLUMN
        NAME                    = "WAXACT_STATUS"
        DESCRIPTION             = "AFM base plate lock mechanism actuator heating status
(1=main, 2=red, 4=extended)."
        DATA_TYPE               =   MSB_UNSIGNED_INTEGER
        START_BYTE              =   285
        BYTES                   =   2
    END_OBJECT                  =   COLUMN

    OBJECT                      = COLUMN
        NAME                    = "WAXACT_EXT_CNT"
        DESCRIPTION             = "Holds number of seconds until base plate actuator
extended heating cycle completes."
        DATA_TYPE               = MSB_UNSIGNED_INTEGER
        START_BYTE              = 287
        BYTES                   =2
    END_OBJECT                  = COLUMN

    OBJECT                      = COLUMN
        NAME                    = "WAXACT_TIMO"
        DESCRIPTION             = "AFM base plate lock mechanism actuator heating
timeout set value."
        DATA_TYPE               =   MSB_UNSIGNED_INTEGER
        START_BYTE              =   289
        BYTES                   =   2
    END_OBJECT                  =   COLUMN

    OBJECT                      = COLUMN
        NAME                    = "WHEEL_TIMO_CNT"
        DESCRIPTION             = "Holds number of seconds until a wheel segment
selection timeout occurs."
        DATA_TYPE               =   MSB_UNSIGNED_INTEGER
        START_BYTE              =   291
        BYTES                   =   2
    END_OBJECT                  =   COLUMN

    OBJECT                      = COLUMN
        NAME                    = "X_ORIGIN"
        DESCRIPTION             = "X offset of image with respect to the X/Y table
origin."
        DATA_TYPE               =   MSB_UNSIGNED_INTEGER
        START_BYTE              =   293
        BYTES                   =   2
    END_OBJECT                  =   COLUMN

    OBJECT                      = COLUMN
        NAME                    = "X_NUM_STEPS"
        DESCRIPTION             = "Number of scan pixels in X direction (n times 32,
n=1-16)."
        DATA_TYPE               =   MSB_UNSIGNED_INTEGER
        START_BYTE              =   295
        BYTES                   =   2
    END_OBJECT                  =   COLUMN

    OBJECT                      = COLUMN
        NAME                    = "X_SCAN_DIRECTION"
        DESCRIPTION             = "Flag, indicates X scan direction (0=low to high DAC
voltage, 1= high to low)."
        DATA_TYPE               =   MSB_UNSIGNED_INTEGER
        START_BYTE              =   297
        BYTES                   =   2
    END_OBJECT                  =   COLUMN

   OBJECT                       = COLUMN
       NAME                     = "X_STEP_SIZE"
       DESCRIPTION              = "X scan step set value in DAC units."
                                                     Document No.     :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
              Interface Control Document             Date             :   1 April 2016
                                                     Page             :   63

       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   299
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "XY_ACTUATOR"
        DESCRIPTION            = "X/Y table lock mechanism actuator selection (0= x-
actuator, 1= y-actuator)."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   301
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "XYACT_MAIN_STARTED"
        DESCRIPTION            = "Flag, set if heating cycle of the main X or Y
actuator is active."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   303
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "XYACT_RED_STARTED"
        DESCRIPTION            = "Flag, set if heating cycle of the redundant X or Y
actuator is active."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   305
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "XYACT_TIMO"
        DESCRIPTION            = "X/Y table lock mechanism actuator heating timeout set
value."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   307
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "XYACT_TIMO_CNT"
        DESCRIPTION            = "Holds number of seconds until an X/Y table release
timeout occurs."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   309
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "Y_STEP_SIZE"
       DESCRIPTION             =   "Y scan step set value in DAC units."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   311
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "Y_ORIGIN"
        DESCRIPTION            = "Y offset of image with respect to the X/Y table
origin."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   313
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "Y_SCAN_DIRECTION"
        DESCRIPTION            = "Flag, indicates Y scan direction (0=low to high DAC
voltage, 1= high to low)."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   315
        BYTES                  =   2
    END_OBJECT                 =   COLUMN
                                                     Document No.     :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
              Interface Control Document             Date             :   1 April 2016
                                                     Page             :   64


    OBJECT                     = COLUMN
        NAME                   = "Y_NUM_STEPS"
        DESCRIPTION            = "Number of scan pixels in Y direction (n times 32,
n=1-16)."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   317
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "Z_STEP_SIZE"
       DESCRIPTION             =   "Z scan step set value in DAC units."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   319
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "HK2_OVFL_FLAGS"
       DESCRIPTION             =   "ADC channel overflow flags."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   321
       BYTES                   =   4
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "DELTA_DC_CONTACT"
        DESCRIPTION            = "Maximum allowed cantilever DC value change during
surface approach."
        DATA_TYPE              =   MSB_INTEGER
        START_BYTE             =   325
        BYTES                  =   2
        OFFSET                 =   1.52590E-004
        SCALING_FACTOR         =   3.05180E-004
        UNIT                   =   V
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "CANT_SIGNAL_RETR"
        DESCRIPTION            = "Cantilever signal at retracted position (magnetic
mode)."
        DATA_TYPE              =   MSB_INTEGER
        START_BYTE             =   327
        BYTES                  =   2
        OFFSET                 =   1.52590E-004
        SCALING_FACTOR         =   3.05180E-004
        UNIT                   =   V
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "DST_INFO"
        DESCRIPTION            = "Data set control status word (0-7=ID, 8-11=status,
12-15=transfer mode)."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   329
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "LONG_Z"
       DESCRIPTION             =   "Last Z piezo position set value during scan."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   331
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "Z_GAIN"
       DESCRIPTION             =   "Gain level for Z position sensor (strain gauge)."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   333
       BYTES                   =   2
   END_OBJECT                  =   COLUMN
                                                     Document No.     :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
              Interface Control Document             Date             :   1 April 2016
                                                     Page             :   65

   OBJECT                      =   COLUMN
       NAME                    =   "GC_X"
       DESCRIPTION             =   "X/Y position sensor X gain control value."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   335
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "GC_Y"
       DESCRIPTION             =   "X/Y position sensor Y gain control value."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   337
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "OFC_X"
       DESCRIPTION             =   "X/Y position sensor X offset control value."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   339
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "OFC_Y"
       DESCRIPTION             =   "X/Y position sensor Y offset control value."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   341
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "SCAN_ALGOR"
        DESCRIPTION            = "Scan algorithm (1=window detection, 2=p-controller,
else threshold detection)."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   343
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "FIRST_THRES_DET"
        DESCRIPTION            = "Flag, set for first threshold detection cycle at
current scan location."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   345
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "DUST_FLUX"
       DESCRIPTION             =   "GIADA dust flux monitor value readout."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   347
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "OP_POINT_PCONTROL"
        DESCRIPTION            = "P-controller (scanning) operating point value
(calculated)."
        DATA_TYPE              =   MSB_INTEGER
        START_BYTE             =   349
        BYTES                  =   2
        OFFSET                 =   1.52590E-004
        SCALING_FACTOR         =   3.05180E-004
        UNIT                   =   V
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "OP_POINT_PCONTR_PERC"
        DESCRIPTION            = "P-controller (scanning) operating point set value in
% of resonance amplitude."
        DATA_TYPE              = MSB_UNSIGNED_INTEGER
                                                     Document No.     :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
              Interface Control Document             Date             :   1 April 2016
                                                     Page             :   66

       START_BYTE              =   351
       BYTES                   =   2
       OFFSET                  =   0.00000E+000
       SCALING_FACTOR          =   1.52590E-003
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "PCONTR_KC"
       DESCRIPTION             =   "P-controller (scanning) gain control set value."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   353
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "PCONTR_ACTIVE"
        DESCRIPTION            = "Flag, indicates that the P-controller is active
during scanning."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   355
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "LAST_EVENT"
       DESCRIPTION             =   "Identifier of last generated on-board event."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   357
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "X_DAC_VAL"
        DESCRIPTION            = "Last DAC value applied to the X piezo of the scanner
head."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   359
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "Y_DAC_VAL"
        DESCRIPTION            = "Last DAC value applied to the Y piezo of the scanner
head."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   361
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "Z_DAC_VAL"
        DESCRIPTION            = "Last DAC value applied to the Z piezo of the scanner
head."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   363
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                      = COLUMN
        NAME                    = "Z_SETTLE_TIME"
        DESCRIPTION             = "Z piezo settling time in milliseconds before
advancing to next scan position."
        DATA_TYPE               = MSB_UNSIGNED_INTEGER
        START_BYTE              = 365
        BYTES                   =2
    END_OBJECT                  = COLUMN

    OBJECT                      = COLUMN
        NAME                    = "XY_SETTLE_TIME"
        DESCRIPTION             = "X/Y piezo settling time in milliseconds before
advancing to next scan position."
        DATA_TYPE               = MSB_UNSIGNED_INTEGER
        START_BYTE              = 367
        BYTES                   =2
    END_OBJECT                  = COLUMN
                                                     Document No.     :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
              Interface Control Document             Date             :   1 April 2016
                                                     Page             :   67


    OBJECT                     = COLUMN
        NAME                   = "DUST_FLUX_MIN"
        DESCRIPTION            = "GIADA dust flux monitor lower limit (exposure time
increases when exceeded)."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   369
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "DUST_FLUX_MAX"
        DESCRIPTION            = "GIADA dust flux monitor upper limit (exposure time
decreases when exceeded)."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   371
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "F_SCAN_MODE"
        DESCRIPTION            = "Flag, set if threshold detection after frequency scan
is skipped."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   373
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "F_THRES_HI"
       DESCRIPTION             =   "Cantilever operating point frequency (high word)."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   375
       BYTES                   =   2
       OFFSET                  =   0.00000E+000
       SCALING_FACTOR          =   4.57703E+001
       UNIT                    =   Hz
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "F_THRES_LO"
       DESCRIPTION             =   "Cantilever operating point frequency (low word)."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   377
       BYTES                   =   2
       OFFSET                  =   0.00000E+000
       SCALING_FACTOR          =   6.98253E-004
       UNIT                    =   Hz
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "F_SYNTH"
       DESCRIPTION             =   "Last output value of frequency synthesizer."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   379
       BYTES                   =   4
       OFFSET                  =   0.00000E+000
       SCALING_FACTOR          =   6.98253E-004
       UNIT                    =   Hz
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "HK1_PERIOD"
       DESCRIPTION             =   "Standard HK report update period in seconds."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   383
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "F_HI"
        DESCRIPTION            = "Last output value of frequency synthesizer (high
word)."
        DATA_TYPE              = MSB_UNSIGNED_INTEGER
        START_BYTE             = 385
                                                     Document No.     :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
              Interface Control Document             Date             :   1 April 2016
                                                     Page             :   68

       BYTES                   =   2
       OFFSET                  =   0.00000E+000
       SCALING_FACTOR          =   4.57703E+001
       UNIT                    =   Hz
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "F_LO"
        DESCRIPTION            = "Last output value of frequency synthesizer (low
word)."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   387
        BYTES                  =   2
        OFFSET                 =   0.00000E+000
        SCALING_FACTOR         =   6.98253E-004
        UNIT                   =   Hz
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "FRES_HI"
       DESCRIPTION             =   "Detected cantilever resonance frequency (high word)."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   389
       BYTES                   =   2
       OFFSET                  =   0.00000E+000
       SCALING_FACTOR          =   4.57703E+001
       UNIT                    =   Hz
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "FRES_LO"
       DESCRIPTION             =   "Detected cantilever resonance frequency (low word)."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   391
       BYTES                   =   2
       OFFSET                  =   0.00000E+000
       SCALING_FACTOR          =   6.98253E-004
       UNIT                    =   Hz
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "READ_ANALOG"
        DESCRIPTION            = "Flag, set if analog channels readout is performed
periodically"
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   393
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "F_SGL_START"
       DESCRIPTION             =   "Frequency scan start value of current cycle."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   395
       BYTES                   =   4
       OFFSET                  =   0.00000E+000
       SCALING_FACTOR          =   6.98253E-004
       UNIT                    =   Hz
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "F_INC"
        DESCRIPTION            = "Frequency scan increment value between cycles (256
times F_STEP)."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   399
        BYTES                  =   4
        OFFSET                 =   0.00000E+000
        SCALING_FACTOR         =   6.98253E-004
        UNIT                   =   Hz
    END_OBJECT                 =   COLUMN

   OBJECT                      = COLUMN
       NAME                    = "DC_AMPL_SET"
       DESCRIPTION             = "DC threshold value for contact mode scanning."
                                                     Document No.     :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
              Interface Control Document             Date             :   1 April 2016
                                                     Page             :   69

       DATA_TYPE               =   MSB_INTEGER
       START_BYTE              =   403
       BYTES                   =   2
       OFFSET                  =   1.52590E-004
       SCALING_FACTOR          =   3.05180E-004
       UNIT                    =   V
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "CHECK_DC_SIGNAL"
        DESCRIPTION            = "Flag, set if checking of the cantilever DC signal
during approach is enabled."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   405
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "U_CANT_DC_START"
        DESCRIPTION            = "Cantilever DC signal value at the beginning of the
coarse approach."
        DATA_TYPE              =   MSB_INTEGER
        START_BYTE             =   407
        BYTES                  =   2
        OFFSET                 =   1.52590E-004
        SCALING_FACTOR         =   3.05180E-004
        UNIT                   =   V
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "CONTACT"
        DESCRIPTION            = "Flag, set if surface contact has occurred during
coarse approach."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   409
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "AUTO_F_ADJUST"
        DESCRIPTION            = "Flag, set if frequency adjustment is enabled during
image scan."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   411
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "WHEEL_COUNTS"
        DESCRIPTION            = "Remaining wheel encoder counts until segment is
reached."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   413
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "PULSE_APPLIED"
       DESCRIPTION             =   "Flag, set if an approach pulse has been applied."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   415
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "LAST_APPR_POSITION"
        DESCRIPTION            = "Last approach position used for checking the approach
movement."
        DATA_TYPE              =   MSB_INTEGER
        START_BYTE             =   417
        BYTES                  =   2
        OFFSET                 =   1.52590E-004
        SCALING_FACTOR         =   3.05180E-004
        UNIT                   =   V
    END_OBJECT                 =   COLUMN
                                                     Document No.     :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
              Interface Control Document             Date             :   1 April 2016
                                                     Page             :   70


   OBJECT                      =   COLUMN
       NAME                    =   "MOVEMENT_CHECKED"
       DESCRIPTION             =   "Flag, set if the approach movement has been checked."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   419
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "CUR_APPROACH_POS"
        DESCRIPTION            = "Current approach position used for checking the
approach movement."
        DATA_TYPE              =   MSB_INTEGER
        START_BYTE             =   421
        BYTES                  =   2
        OFFSET                 =   1.52590E-004
        SCALING_FACTOR         =   3.05180E-004
        UNIT                   =   V
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "TEST_COUNT"
        DESCRIPTION            = "Holds number of milliseconds until approach movement
is checked."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   423
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "APPR_TEST_COUNT"
        DESCRIPTION            = "Approach movement test interval in milliseconds (set
value)."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   425
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "DELTA_OP_AMPL_DC"
       DESCRIPTION             =   "Contact mode operating point deviation (calculated)."
       DATA_TYPE               =   MSB_INTEGER
       START_BYTE              =   427
       BYTES                   =   2
       OFFSET                  =   1.52590E-004
       SCALING_FACTOR          =   3.05180E-004
       UNIT                    =   V
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "DELTA_OP_PERC_DC"
        DESCRIPTION            = "Contact mode operating point deviation in % of
cantilever DC set value."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   429
        BYTES                  =   2
        OFFSET                 =   0.00000E+000
        SCALING_FACTOR         =   1.52590E-003
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "OP_UP_DC"
       DESCRIPTION             =   "Contact mode operating point amplitude upper limit."
       DATA_TYPE               =   MSB_INTEGER
       START_BYTE              =   431
       BYTES                   =   2
       OFFSET                  =   1.52590E-004
       SCALING_FACTOR          =   3.05180E-004
       UNIT                    =   V
   END_OBJECT                  =   COLUMN

   OBJECT                      = COLUMN
       NAME                    = "OP_LO_DC"
       DESCRIPTION             = "Contact mode operating point amplitude lower limit."
                                                     Document No.     :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
              Interface Control Document             Date             :   1 April 2016
                                                     Page             :   71

       DATA_TYPE               =   MSB_INTEGER
       START_BYTE              =   433
       BYTES                   =   2
       OFFSET                  =   1.52590E-004
       SCALING_FACTOR          =   3.05180E-004
       UNIT                    =   V
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "DELTA_APPR_LVDT"
        DESCRIPTION            = "Minimum approach position change before incrementing
the stuck counter."
        DATA_TYPE              =   MSB_INTEGER
        START_BYTE             =   435
        BYTES                  =   2
        OFFSET                 =   1.52590E-004
        SCALING_FACTOR         =   3.05180E-004
        UNIT                   =   V
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "APPR_POS_MAX"
       DESCRIPTION             =   "Approach sensor position upper limit (set value)."
       DATA_TYPE               =   MSB_INTEGER
       START_BYTE              =   437
       BYTES                   =   2
       OFFSET                  =   1.52590E-004
       SCALING_FACTOR          =   3.05180E-004
       UNIT                    =   V
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "APPR_POS_MIN"
       DESCRIPTION             =   "Approach sensor position lower limit (set value)."
       DATA_TYPE               =   MSB_INTEGER
       START_BYTE              =   439
       BYTES                   =   2
       OFFSET                  =   1.52590E-004
       SCALING_FACTOR          =   3.05180E-004
       UNIT                    =   V
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "FINE_ADJUSTMENT_STARTED"
        DESCRIPTION            = "Flag, set if the approach fine adjustment has
started."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   441
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "TASK_ACTIVE"
       DESCRIPTION             =   "Flag, set if a task is active (e.g. scan)."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   443
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "APPR_NUM_PULSES"
        DESCRIPTION            = "Number of approach pulses to apply before testing the
approach movement."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   445
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "CANT_HIRES_STARTED"
        DESCRIPTION            = "Flag, set if the cantilever high resolution DAQ task
is active."
        DATA_TYPE              = MSB_UNSIGNED_INTEGER
        START_BYTE             = 447
        BYTES                  =2
                                                       Document No.     :   MID-IWF-TN-0087
                ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
                Interface Control Document             Date             :   1 April 2016
                                                       Page             :   72

   END_OBJECT                    = COLUMN

    OBJECT                       = COLUMN
        NAME                     = "CANT_HIRES_TIME"
        DESCRIPTION              = "Time in milliseconds between two cantilever high
resolution measurements."
        DATA_TYPE                =   MSB_UNSIGNED_INTEGER
        START_BYTE               =   449
        BYTES                    =   2
    END_OBJECT                   =   COLUMN

    OBJECT                       = COLUMN
        NAME                     = "CANT_HIRES_PKTS"
        DESCRIPTION              = "Total number of cantilever high resolution DAQ data
packets."
        DATA_TYPE                =   MSB_UNSIGNED_INTEGER
        START_BYTE               =   451
        BYTES                    =   2
    END_OBJECT                   =   COLUMN

    OBJECT                       = COLUMN
        NAME                     = "CANT_HIRES_TIME_CNT"
        DESCRIPTION              = "Time in milliseconds since last cantilever high
resolution measurement."
        DATA_TYPE                =   MSB_UNSIGNED_INTEGER
        START_BYTE               =   453
        BYTES                    =   2
    END_OBJECT                   =   COLUMN

    OBJECT                       = COLUMN
        NAME                     = "CANT_HIRES_PKTS_CNT"
        DESCRIPTION              = "Number of cantilever high resolution DAQ data packets
generated so far."
        DATA_TYPE                =   MSB_UNSIGNED_INTEGER
        START_BYTE               =   455
        BYTES                    =   2
    END_OBJECT                   =   COLUMN

   OBJECT                        =   COLUMN
       NAME                      =   "CAL_STATE"
       DESCRIPTION               =   "X/Y position sensor calibration task status word."
       DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
       START_BYTE                =   457
       BYTES                     =   2
   END_OBJECT                    =   COLUMN

   OBJECT                        =   COLUMN
       NAME                      =   "SW_DATA_PAGE"
       DESCRIPTION               =   "Page number for S/W backup/restore."
       DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
       START_BYTE                =   459
       BYTES                     =   2
   END_OBJECT                    =   COLUMN

   OBJECT                        =   COLUMN
       NAME                      =   "SW_STATUS"
       DESCRIPTION               =   "S/W encoding/decoding task status word."
       DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
       START_BYTE                =   461
       BYTES                     =   2
   END_OBJECT                    =   COLUMN

   OBJECT                        =   COLUMN
       NAME                      =   "SW_PAR_SET_ADDR"
       DESCRIPTION               =   "Last S/W parameter address."
       DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
       START_BYTE                =   463
       BYTES                     =   2
   END_OBJECT                    =   COLUMN

   OBJECT                        =   COLUMN
       NAME                      =   "SW_PAR_SET_VAL"
       DESCRIPTION               =   "Last S/W parameter set value."
       DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
       START_BYTE                =   465
                                                    Document No.       :   MID-IWF-TN-0087
             ROSETTA-MIDAS to PSA                   Issue/Rev. No.     :   1.4
             Interface Control Document             Date               :   1 April 2016
                                                    Page               :   73

    BYTES                     =2
END_OBJECT                    = COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "SW_PAR_HK1_ADDR"
    DESCRIPTION               =   "Address of 1st adjustable HK parameter readout."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   467
    BYTES                     =   2
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "SW_PAR_HK2_ADDR"
    DESCRIPTION               =   "Address of 2nd adjustable HK parameter readout."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   469
    BYTES                     =   2
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "SW_PAR_HK3_ADDR"
    DESCRIPTION               =   "Address of 3rd adjustable HK parameter readout."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   471
    BYTES                     =   2
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "SW_PAR_HK4_ADDR"
    DESCRIPTION               =   "Address of 4th adjustable HK parameter readout."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   473
    BYTES                     =   2
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "SW_PAR_HK1_VAL"
    DESCRIPTION               =   "Value of 1st adjustable HK parameter readout."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   475
    BYTES                     =   2
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "SW_PAR_HK2_VAL"
    DESCRIPTION               =   "Value of 2nd adjustable HK parameter readout."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   477
    BYTES                     =   2
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "SW_PAR_HK3_VAL"
    DESCRIPTION               =   "Value of 3rd adjustable HK parameter readout."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   479
    BYTES                     =   2
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "SW_PAR_HK4_VAL"
    DESCRIPTION               =   "Value of 4th adjustable HK parameter readout."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   481
    BYTES                     =   2
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "FVECT_MODE"
    DESCRIPTION               =   "Feature vector calculation mode."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   483
    BYTES                     =   2
END_OBJECT                    =   COLUMN
                                                     Document No.     :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
              Interface Control Document             Date             :   1 April 2016
                                                     Page             :   74

    OBJECT                     = COLUMN
        NAME                   = "FVECT_LPERC"
        DESCRIPTION            = "Feature detection threshold value in percent of
min/max Z value."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   485
        BYTES                  =   2
        OFFSET                 =   0.00000E+000
        SCALING_FACTOR         =   1.52590E-003
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "FVECT_LEVEL"
       DESCRIPTION             =   "Calculated feature vector threshold value."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   487
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "FVECT_XMARGIN"
        DESCRIPTION            = "Feature vector X margin (pixel) with respect to
selected image."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   489
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "FVECT_YMARGIN"
        DESCRIPTION            = "Feature vector Y margin (pixel) with respect to
selected image."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   491
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "FVECT_STATUS"
       DESCRIPTION             =   "Feature vector calculation status word."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   493
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "FVECT_NUMPTS"
        DESCRIPTION            = "Required number of points related to a feature in
order to be selected."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   495
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "FVECT_AVG_Z"
        DESCRIPTION            = "Required average height over Z level for a feature in
order to be selected."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   497
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "FVECT_RATIO"
        DESCRIPTION            = "Required minimum pixels/area ratio for a feature in
order to be selected."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   499
        BYTES                  =   2
        OFFSET                 =   0.00000E+000
        SCALING_FACTOR         =   1.52590E-003
    END_OBJECT                 =   COLUMN

   OBJECT                      = COLUMN
                                                     Document No.     :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
              Interface Control Document             Date             :   1 April 2016
                                                     Page             :   75

        NAME                   = "FVECT_ZFACTOR"
        DESCRIPTION            = "Feature vector calculation zoom factor in % of
feature size."
        DATA_TYPE              =   MSB_INTEGER
        START_BYTE             =   501
        BYTES                  =   2
        OFFSET                 =   1.52590E-003
        SCALING_FACTOR         =   3.05180E-003
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "SC_ENABLED"
       DESCRIPTION             =   "Flag, set if science data transfer is enabled?"
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   503
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "POINT_READY"
        DESCRIPTION            = "Flag, set if cantilever signal is within operating
point range."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   505
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "IMAGE_POINT"
        DESCRIPTION            = "Z set value or AC signal difference (magnetic mode)
for last DAQ point."
        DATA_TYPE              =   MSB_UNSIGNED_INTEGER
        START_BYTE             =   507
        BYTES                  =   2
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "LIN_TIP_CENTER"
        DESCRIPTION            = "Linear LVDT value to center the currently selected
tip within the target."
        DATA_TYPE              =   MSB_INTEGER
        START_BYTE             =   509
        BYTES                  =   2
        OFFSET                 =   1.52590E-004
        SCALING_FACTOR         =   3.05180E-004
        UNIT                   =   V
    END_OBJECT                 =   COLUMN

    OBJECT                     = COLUMN
        NAME                   = "F_ADJUST_AMPL"
        DESCRIPTION            = "Threshold amplitude for automatic f-adjusting during
scans."
        DATA_TYPE              =   MSB_INTEGER
        START_BYTE             =   511
        BYTES                  =   2
        OFFSET                 =   1.52590E-004
        SCALING_FACTOR         =   3.05180E-004
        UNIT                   =   V
    END_OBJECT                 =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "HK2_SPARE_1"
       DESCRIPTION             =   "Extended HK report spare word #1."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   513
       BYTES                   =   2
   END_OBJECT                  =   COLUMN

   OBJECT                      =   COLUMN
       NAME                    =   "HK2_SPARE_2"
       DESCRIPTION             =   "Extended HK report spare word #2."
       DATA_TYPE               =   MSB_UNSIGNED_INTEGER
       START_BYTE              =   515
       BYTES                   =   2
   END_OBJECT                  =   COLUMN
                                                 Document No.     :   MID-IWF-TN-0087
          ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
          Interface Control Document             Date             :   1 April 2016
                                                 Page             :   76


OBJECT                     =   COLUMN
    NAME                   =   "HK2_SPARE_3"
    DESCRIPTION            =   "Extended HK report spare word #3."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   517
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "HK2_SPARE_4"
    DESCRIPTION            =   "Extended HK report spare word #4."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   519
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "HK2_SPARE_5"
    DESCRIPTION            =   "Extended HK report spare word #5."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   521
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "HK2_FRAME_CS"
    DESCRIPTION            =   "Frame checksum (CRC16), including frame header."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   523
    BYTES                  =   2
END_OBJECT                 =   COLUMN
                                                               Document No.     :   MID-IWF-TN-0087
                    ROSETTA-MIDAS to PSA                       Issue/Rev. No.   :   1.4
                    Interface Control Document                 Date             :   1 April 2016
                                                               Page             :   77


4.3.3 Data Product Design - Frequency Scan Data

    The MIDAS frequency scan data files are binary tables containing the plain telemetry packets as
    retrieved from the DDS. Each data file has associated a detached PDS label with the same
    name as the data file it describes, but with the extension .LBL. The data file columns are defined
    in a separate format file referred to by the ^STRUCTURE keyword in the PDS labels:
        *   Data directory:    /DATA/FSC
        *   File naming:       FSC_yydddhh_yydddhh_nnn_tt.DAT
        *   File structure:    /LABEL/FSC_PREFIX.FMT
    Parameters having a physical representation can be calibrated by applying the OFFSET,
    SCALING_FACTOR and UNIT keywords (defined in the related column object in the format file)
    to the raw value:
        *   physical_value = OFFSET + raw_value*SCALING_FACTOR [UNIT]
    A frequency scan comprises n (n=1...8) scan cycles of 256 samples each. This data can be
    mapped to a frequency series table with n rows and 1 column having 256 items. Thus the
    sampling parameter interval of the table object is 256 times the sampling parameter interval of
    the associated column object. The frequency range for a given scan is defined by the following
    keywords of the FREQUENCY_SERIES object:
        *   Start frequency: MINIMUM_SAMPLING_PARAMETER
        *   Scan cycles:       ROWS (total number of samples = 256*ROWS)
        *   Frequency step: SAMPLING_PARAMETER_INTERVAL/256
        *   Frequency range: (256*ROWS - 1)*SAMPLING_PARAMETER_INTERVAL/256


    A typical PDS label for a frequency scan data file is given below:


    PDS_VERSION_ID                     = PDS3
    LABEL_REVISION_NOTE                = "<LABEL_REVISION_NOTE>"

    RECORD_TYPE                        = FIXED_LENGTH
    RECORD_BYTES                       = 576
    FILE_RECORDS                       = <FILE_RECORDS>

    DATA_SET_ID                        = "<DATA_SET_ID>"
    DATA_SET_NAME                      = "<DATA_SET_NAME>"

    PRODUCT_ID                         =   "<PRODUCT_ID>"
    PRODUCT_VERSION_ID                 =   "<PRODUCT_VERSION_ID>"
    PRODUCT_CREATION_TIME              =   <PRODUCT_CREATION_TIME>
    PRODUCT_TYPE                       =   EDR
    PROCESSING_LEVEL_ID                =   <PROCESSING_LEVEL_ID>

    MISSION_ID                         = ROSETTA
    MISSION_NAME                       = "INTERNATIONAL ROSETTA MISSION"
    MISSION_PHASE_NAME                 = "<MISSION_PHASE_NAME>"

    INSTRUMENT_HOST_ID                 =   <INSTRUMENT_HOST_ID>
    INSTRUMENT_HOST_NAME               =   "<INSTRUMENT_HOST_NAME>"
    INSTRUMENT_ID                      =   <INSTRUMENT_ID>
    INSTRUMENT_NAME                    =   "<INSTRUMENT_NAME>"
    INSTRUMENT_TYPE                    =   "<INSTRUMENT_TYPE>"
    INSTRUMENT_MODE_ID                 =   <INSTRUMENT_MODE_ID>
    INSTRUMENT_MODE_DESC               =   "<INSTRUMENT_MODE_DESC>"
                                                         Document No.     :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                       Issue/Rev. No.   :   1.4
              Interface Control Document                 Date             :   1 April 2016
                                                         Page             :   78

TARGET_NAME                       = "<TARGET_NAME>"
TARGET_TYPE                       = "<TARGET_TYPE>"

START_TIME                        =   <START_TIME>
STOP_TIME                         =   <STOP_TIME>
SPACECRAFT_CLOCK_START_COUNT      =   "<START_COUNT>"
SPACECRAFT_CLOCK_STOP_COUNT       =   "<STOP_COUNT>"
NATIVE_START_TIME                 =   <NATIVE_START_TIME>
NATIVE_STOP_TIME                  =   <NATIVE_STOP_TIME>

PRODUCER_ID                       = "<PRODUCER_ID>"
PRODUCER_FULL_NAME                = "<PRODUCER_FULL_NAME>"
PRODUCER_INSTITUTION_NAME         = "<PRODUCER_INSTITUTION_NAME>"

DATA_QUALITY_ID                   = <DATA_QUALITY_ID>
DATA_QUALITY_DESC                 = "<DATA_QUALITY_DESC>"

/* GEOMETRY INFORMATION */

SC_SUN_POSITION_VECTOR            =   <SC_SUN_POSITION_VECTOR>
SC_TARGET_POSITION_VECTOR         =   <SC_TARGET_POSITION_VECTOR>
SC_TARGET_VELOCITY_VECTOR         =   <SC_TARGET_VELOCITY_VECTOR>
SPACECRAFT_ALTITUDE               =   <SPACECRAFT_ALTITUDE>
SUB_SPACECRAFT_LATITUDE           =   <SUB_SPACECRAFT_LATITUDE>
SUB_SPACECRAFT_LONGITUDE          =   <SUB_SPACECRAFT_LONGITUDE>

/* MISSION SPECIFIC KEYWORDS */

ROSETTA:MIDAS_TIP_NUMBER          = <MIDAS_TIP_NUMBER>

/* DATA FILE POINTER(S) */

^ROW_PREFIX_TABLE                 = "<FILE_NAME>"
^FREQUENCY_SERIES                 = "<FILE_NAME>"

/* DATA OBJECT DEFINITION(S) */

OBJECT                            =   ROW_PREFIX_TABLE
    NAME                          =   PKT_HEADER
    INTERCHANGE_FORMAT            =   BINARY
    ROWS                          =   <FILE_RECORDS>
    COLUMNS                       =   23
    ROW_BYTES                     =   62
    ROW_SUFFIX_BYTES              =   514
    DESCRIPTION                   =   "Frequency scan header table"
    ^STRUCTURE                    =   "FSC_PREFIX.FMT"
END_OBJECT                        =   ROW_PREFIX_TABLE

OBJECT                            =   FREQUENCY_SERIES
    NAME                          =   FREQUENCY_DATA
    INTERCHANGE_FORMAT            =   BINARY
    ROWS                          =   <FILE_RECORDS>
    COLUMNS                       =   1
    ROW_BYTES                     =   512
    ROW_PREFIX_BYTES              =   62
    ROW_SUFFIX_BYTES              =   2
    SAMPLING_PARAMETER_NAME       =   FREQUENCY
    SAMPLING_PARAMETER_UNIT       =   HERTZ
    SAMPLING_PARAMETER_INTERVAL   =   <FSC_INTERVAL>        /* time between rows */
    MINIMUM_SAMPLING_PARAMETER    =   <FSC_MINIMUM>
    DESCRIPTION                   =   "<FSC_DESCRIPTION>"

   OBJECT                      = COLUMN
       NAME                    = DATA_SAMPLES
       DATA_TYPE               = MSB_INTEGER
       START_BYTE              =1
       BYTES                   = 512
       ITEMS                   = 256
       ITEM_BYTES              =2
       SAMPLING_PARAMETER_NAME = FREQUENCY
       SAMPLING_PARAMETER_UNIT = HERTZ
       SAMPLING_PARAMETER_INTERVAL = <FSC_SAMPLING>            /* time between samples */

       SCALING_FACTOR             = 3.0518E-04
       OFFSET                     = 0.0
                                                          Document No.     :   MID-IWF-TN-0087
                ROSETTA-MIDAS to PSA                      Issue/Rev. No.   :   1.4
                Interface Control Document                Date             :   1 April 2016
                                                          Page             :   79

        DERIVED_MINIMUM            =   0.0
        DERIVED_MAXIMUM            =   10.0
    END_OBJECT                     =   COLUMN
END_OBJECT                         =   FREQUENCY_SERIES

END


The frequency scan row prefix structure is defined as follows:



      /* FSC PREFIX STRUCTURE */

      OBJECT                       =   COLUMN
          NAME                     =   "PACKET_ID"
          DESCRIPTION              =   "Telemetry packet identifier."
          DATA_TYPE                =   MSB_UNSIGNED_INTEGER
          START_BYTE               =   1
          BYTES                    =   2
      END_OBJECT                   =   COLUMN

      OBJECT                       =   COLUMN
          NAME                     =   "PACKET_SEQUENCE_CONTROL"
          DESCRIPTION              =   "Telemetry packet sequence counter."
          DATA_TYPE                =   MSB_UNSIGNED_INTEGER
          START_BYTE               =   3
          BYTES                    =   2
      END_OBJECT                   =   COLUMN

      OBJECT                       =   COLUMN
          NAME                     =   "PACKET_LENGTH"
          DESCRIPTION              =   "Telemetry packet length."
          DATA_TYPE                =   MSB_UNSIGNED_INTEGER
          START_BYTE               =   5
          BYTES                    =   2
      END_OBJECT                   =   COLUMN

      OBJECT                       =   COLUMN
          NAME                     =   "PACKET_OBT_SECONDS"
          DESCRIPTION              =   "S/C clock count at packet generation."
          DATA_TYPE                =   MSB_UNSIGNED_INTEGER
          START_BYTE               =   7
          BYTES                    =   4
      END_OBJECT                   =   COLUMN

      OBJECT                       =   COLUMN
          NAME                     =   "PACKET_OBT_FRACTION"
          DESCRIPTION              =   "Fractional part of S/C clock count."
          DATA_TYPE                =   MSB_UNSIGNED_INTEGER
          START_BYTE               =   11
          BYTES                    =   2
      END_OBJECT                   =   COLUMN

      OBJECT                       =   COLUMN
          NAME                     =   "PACKET_PUS_AND_CRC"
          DESCRIPTION              =   "Telemetry packet PUS-Version and CRC flag."
          DATA_TYPE                =   MSB_UNSIGNED_INTEGER
          START_BYTE               =   13
          BYTES                    =   1
      END_OBJECT                   =   COLUMN

      OBJECT                       =   COLUMN
          NAME                     =   "PACKET_TYPE"
          DESCRIPTION              =   "Telemetry packet type."
          DATA_TYPE                =   MSB_UNSIGNED_INTEGER
          START_BYTE               =   14
          BYTES                    =   1
      END_OBJECT                   =   COLUMN

      OBJECT                       =   COLUMN
          NAME                     =   "PACKET_SUBTYPE"
          DESCRIPTION              =   "Telemetry packet sub-type."
          DATA_TYPE                =   MSB_UNSIGNED_INTEGER
                                                 Document No.      :   MID-IWF-TN-0087
          ROSETTA-MIDAS to PSA                   Issue/Rev. No.    :   1.4
          Interface Control Document             Date              :   1 April 2016
                                                 Page              :   80

    START_BYTE             = 15
    BYTES                  =1
END_OBJECT                 = COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "PACKET_PAD_FIELD"
    DESCRIPTION            =   "Telemetry packet padding field."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   16
    BYTES                  =   1
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "STRUCTURE_ID"
    DESCRIPTION            =   "Telemetry packet structure identifier."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   17
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "SOFTWARE_VERSION"
    DESCRIPTION            =   "On-board software version."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   19
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "START_TIME"
    DESCRIPTION            =   "S/C clock count at frequency scan start."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   21
    BYTES                  =   4
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "START_FREQUENCY"
    DESCRIPTION            =   "Start value of frequency sweep."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   25
    BYTES                  =   4
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "FREQUENCY_STEP"
    DESCRIPTION            =   "Increment value of frequency sweep."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   29
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     = COLUMN
    NAME                   = "AC_MAXIMUM"
    DESCRIPTION            = "Detected max. cantilever signal amplitude
                              (up to the current scan cycle)."
    DATA_TYPE              = MSB_UNSIGNED_INTEGER
    START_BYTE             = 31
    BYTES                  =2
    SCALING_FACTOR         = 3.0518E-04
    OFFSET                 = 0.0
END_OBJECT                 = COLUMN

OBJECT                     = COLUMN
    NAME                   = "FREQUENCY_AT_MAX"
    DESCRIPTION            = "Frequency where the maximum signal
                              amplitude was detected."
    DATA_TYPE              = MSB_UNSIGNED_INTEGER
    START_BYTE             = 33
    BYTES                  =4
END_OBJECT                 = COLUMN

OBJECT                     = COLUMN
    NAME                   = "NUM_SCANS"
    DESCRIPTION            = "Total number of frequency scan cycles."
                                                 Document No.       :   MID-IWF-TN-0087
          ROSETTA-MIDAS to PSA                   Issue/Rev. No.     :   1.4
          Interface Control Document             Date               :   1 April 2016
                                                 Page               :   81

    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   37
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "SCAN_CYCLE"
    DESCRIPTION            =   "Current scan cycle number."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   39
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "CANT_TIP_NUM"
    DESCRIPTION            =   "Selected cantilever [1-8]."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   41
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "CANT_BLK_NUM"
    DESCRIPTION            =   "Selected cantilever block [1-2]."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   43
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     = COLUMN
    NAME                   = "EXCITATION_LEVEL"
    DESCRIPTION            = "Gain level of piezo-electric actuator
                              used for cantilever excitation [0-7]."
    DATA_TYPE              = MSB_UNSIGNED_INTEGER
    START_BYTE             = 45
    BYTES                  =2
END_OBJECT                 = COLUMN

OBJECT                     = COLUMN
    NAME                   = "AC_GAIN_LEVEL"
    DESCRIPTION            = "Gain level of cantilever AC signal
                              amplifier [0-7]."
    DATA_TYPE              = MSB_UNSIGNED_INTEGER
    START_BYTE             = 47
    BYTES                  =2
END_OBJECT                 = COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "SPARE"
    DESCRIPTION            =   "Currently not used."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   49
    BYTES                  =   14
    ITEMS                  =   7
    ITEM_BYTES             =   2
END_OBJECT                 =   COLUMN
                                                               Document No.     :   MID-IWF-TN-0087
                    ROSETTA-MIDAS to PSA                       Issue/Rev. No.   :   1.4
                    Interface Control Document                 Date             :   1 April 2016
                                                               Page             :   82


4.3.4 Data Product Design - Single Point Approach Data

    The MIDAS single point approach data files are binary tables containing the plain telemetry
    packets as retrieved from the DDS. Each data file has associated a detached PDS label with the
    same name as the data file it describes, but with the extension .LBL. The data file columns are
    defined in a separate format file referred to by the ^STRUCTURE keyword in the PDS labels:
        *   Data directory:    /DATA/SPA
        *   File naming:       SPA_yydddhh_yydddhh_nnn_tt.DAT
        *   File structure:    /LABEL/SPA_STRUCTURE.FMT
    Parameters having a physical representation can be calibrated by applying the OFFSET,
    SCALING_FACTOR and UNIT keywords (defined in the related column object in the format file)
    to the raw value:
        *   physical_value = OFFSET + raw_value*SCALING_FACTOR [UNIT]
    A single point approach scan data record comprises 4 data channels with up to n (n=1-256) data
    samples each. The actual number of data samples (valid for all channels) for a record is given in
    the NUM_SAMPLES column.


    A typical PDS label for a single point approach data file is given below:


    PDS_VERSION_ID                      = PDS3
    LABEL_REVISION_NOTE                 = "<LABEL_REVISION_NOTE>"

    RECORD_TYPE                         = FIXED_LENGTH
    RECORD_BYTES                        = 2096
    FILE_RECORDS                        = <FILE_RECORDS>

    DATA_SET_ID                         = "<DATA_SET_ID>"
    DATA_SET_NAME                       = "<DATA_SET_NAME>"

    PRODUCT_ID                          =   "<PRODUCT_ID>"
    PRODUCT_VERSION_ID                  =   "<PRODUCT_VERSION_ID>"
    PRODUCT_CREATION_TIME               =   <PRODUCT_CREATION_TIME>
    PRODUCT_TYPE                        =   EDR
    PROCESSING_LEVEL_ID                 =   <PROCESSING_LEVEL_ID>

    MISSION_ID                          = ROSETTA
    MISSION_NAME                        = "INTERNATIONAL ROSETTA MISSION"
    MISSION_PHASE_NAME                  = "<MISSION_PHASE_NAME>"

    INSTRUMENT_HOST_ID                  =   <INSTRUMENT_HOST_ID>
    INSTRUMENT_HOST_NAME                =   "<INSTRUMENT_HOST_NAME>"
    INSTRUMENT_ID                       =   <INSTRUMENT_ID>
    INSTRUMENT_NAME                     =   "<INSTRUMENT_NAME>"
    INSTRUMENT_TYPE                     =   "<INSTRUMENT_TYPE>"
    INSTRUMENT_MODE_ID                  =   <INSTRUMENT_MODE_ID>
    INSTRUMENT_MODE_DESC                =   "<INSTRUMENT_MODE_DESC>"

    TARGET_NAME                         = "<TARGET_NAME>"
    TARGET_TYPE                         = "<TARGET_TYPE>"

    START_TIME                          =   <START_TIME>
    STOP_TIME                           =   <STOP_TIME>
    SPACECRAFT_CLOCK_START_COUNT        =   "<START_COUNT>"
    SPACECRAFT_CLOCK_STOP_COUNT         =   "<STOP_COUNT>"
    NATIVE_START_TIME                   =   <NATIVE_START_TIME>
    NATIVE_STOP_TIME                    =   <NATIVE_STOP_TIME>

    PRODUCER_ID                         = "<PRODUCER_ID>"
                                                          Document No.     :   MID-IWF-TN-0087
                ROSETTA-MIDAS to PSA                      Issue/Rev. No.   :   1.4
                Interface Control Document                Date             :   1 April 2016
                                                          Page             :   83

PRODUCER_FULL_NAME                 = "<PRODUCER_FULL_NAME>"
PRODUCER_INSTITUTION_NAME          = "<PRODUCER_INSTITUTION_NAME>"

DATA_QUALITY_ID                    = <DATA_QUALITY_ID>
DATA_QUALITY_DESC                  = "<DATA_QUALITY_DESC>"

/* GEOMETRY INFORMATION */

SC_SUN_POSITION_VECTOR             =   <SC_SUN_POSITION_VECTOR>
SC_TARGET_POSITION_VECTOR          =   <SC_TARGET_POSITION_VECTOR>
SC_TARGET_VELOCITY_VECTOR          =   <SC_TARGET_VELOCITY_VECTOR>
SPACECRAFT_ALTITUDE                =   <SPACECRAFT_ALTITUDE>
SUB_SPACECRAFT_LATITUDE            =   <SUB_SPACECRAFT_LATITUDE>
SUB_SPACECRAFT_LONGITUDE           =   <SUB_SPACECRAFT_LONGITUDE>

/* MISSION SPECIFIC KEYWORDS */

ROSETTA:MIDAS_TIP_NUMBER           =   <MIDAS_TIP_NUMBER>
ROSETTA:MIDAS_TARGET_NUMBER        =   <MIDAS_TARGET_NUMBER>
ROSETTA:MIDAS_TARGET_TYPE          =   <MIDAS_TARGET_TYPE>
ROSETTA:MIDAS_TARGET_NAME          =   <MIDAS_TARGET_NAME>

ROSETTA:MIDAS_LIN_STAGE_POS        =   <MIDAS_LIN_STAGE_POS>
ROSETTA:MIDAS_SEGMENT_NUMBER       =   <MIDAS_SEGMENT_NUMBER>
ROSETTA:MIDAS_SCAN_START_XY        =   <MIDAS_SCAN_START_XY>
ROSETTA:MIDAS_SCAN_STOP_XY         =   <MIDAS_SCAN_STOP_XY>
ROSETTA:MIDAS_SCAN_DIRECTION       =   <MIDAS_SCAN_DIRECTION>

ROSETTA:MIDAS_SCANNING_MODE        = <MIDAS_SCANNING_MODE>

/* DATA FILE POINTER(S) */

^SPA_TABLE                         = "<FILE_NAME>"

/* DATA OBJECT DEFINITION(S) */

OBJECT                             =   SPA_TABLE
    INTERCHANGE_FORMAT             =   BINARY
    ROWS                           =   <FILE_RECORDS>
    COLUMNS                        =   27
    ROW_BYTES                      =   2096
    DESCRIPTION                    =   "MIDAS scan control data"
    ^STRUCTURE                     =   "SPA_STRUCTURE.FMT"
END_OBJECT                         =   SPA_TABLE

END


The single point approach record structure is defined as follows:



      /* SPA FRAME STRUCTURE */

      OBJECT                       =   COLUMN
          NAME                     =   "PACKET_ID"
          DESCRIPTION              =   "Telemetry packet identifier."
          DATA_TYPE                =   MSB_UNSIGNED_INTEGER
          START_BYTE               =   1
          BYTES                    =   2
      END_OBJECT                   =   COLUMN

      OBJECT                       =   COLUMN
          NAME                     =   "PACKET_SEQUENCE_CONTROL"
          DESCRIPTION              =   "Telemetry packet sequence counter."
          DATA_TYPE                =   MSB_UNSIGNED_INTEGER
          START_BYTE               =   3
          BYTES                    =   2
      END_OBJECT                   =   COLUMN

      OBJECT                       =   COLUMN
          NAME                     =   "PACKET_LENGTH"
          DESCRIPTION              =   "Telemetry packet length."
          DATA_TYPE                =   MSB_UNSIGNED_INTEGER
                                                 Document No.      :   MID-IWF-TN-0087
          ROSETTA-MIDAS to PSA                   Issue/Rev. No.    :   1.4
          Interface Control Document             Date              :   1 April 2016
                                                 Page              :   84

    START_BYTE             =5
    BYTES                  =2
END_OBJECT                 = COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "PACKET_OBT_SECONDS"
    DESCRIPTION            =   "S/C clock count at packet generation."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   7
    BYTES                  =   4
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "PACKET_OBT_FRACTION"
    DESCRIPTION            =   "Fractional part of S/C clock count."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   11
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "PACKET_PUS_AND_CRC"
    DESCRIPTION            =   "Telemetry packet PUS-Version and CRC flag."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   13
    BYTES                  =   1
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "PACKET_TYPE"
    DESCRIPTION            =   "Telemetry packet type."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   14
    BYTES                  =   1
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "PACKET_SUBTYPE"
    DESCRIPTION            =   "Telemetry packet sub-type."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   15
    BYTES                  =   1
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "PACKET_PAD_FIELD"
    DESCRIPTION            =   "Telemetry packet padding field."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   16
    BYTES                  =   1
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "STRUCTURE_ID"
    DESCRIPTION            =   "Telemetry packet structure identifier."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   17
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "SOFTWARE_VERSION"
    DESCRIPTION            =   "On-board software version."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   19
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "LINEAR_POS"
    DESCRIPTION            =   "Linear stage position sensor readout."
    DATA_TYPE              =   MSB_INTEGER
    START_BYTE             =   21
    BYTES                  =   2
    OFFSET                 =   1.52590E-004
                                                 Document No.       :   MID-IWF-TN-0087
          ROSETTA-MIDAS to PSA                   Issue/Rev. No.     :   1.4
          Interface Control Document             Date               :   1 April 2016
                                                 Page               :   85

    SCALING_FACTOR         = 3.05180E-004
    UNIT                   = VOLT
END_OBJECT                 = COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "WHEEL_POS"
    DESCRIPTION            =   "Current wheel position (segment number)."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   23
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "TIP_NUMBER"
    DESCRIPTION            =   "Number of selected tip."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   25
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "X_ORIGIN"
    DESCRIPTION            =   "Scan origin in X direction (DAC units)."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   27
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "Y_ORIGIN"
    DESCRIPTION            =   "Scan origin in Y direction (DAC units)."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   29
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "STEP_SIZE"
    DESCRIPTION            =   "Line scan step size (DAC units)."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   31
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "NUM_STEPS"
    DESCRIPTION            =   "Number of line scan steps (pixels)."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   33
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     = COLUMN
    NAME                   = "SCAN_MODE"
    DESCRIPTION            = "Scanning mode for image acquisition):
                              Bit 0-7: 0=DYN[amic], 1=CON[tact], 2=MAG[netic],
                              Bit   8: line scan direction (0=std.,1=reverse),
                              Bit 12: main scan direction (0=X,1=Y)"
    DATA_TYPE              = MSB_UNSIGNED_INTEGER
    START_BYTE             = 35
    BYTES                  =2
END_OBJECT                 = COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "MAIN_SCAN_CNT"
    DESCRIPTION            =   "Current main scan counter."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   37
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "NUM_SAMPLES"
    DESCRIPTION            =   "Total number of measurements."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
                                                 Document No.       :   MID-IWF-TN-0087
          ROSETTA-MIDAS to PSA                   Issue/Rev. No.     :   1.4
          Interface Control Document             Date               :   1 April 2016
                                                 Page               :   86

    START_BYTE             = 39
    BYTES                  =2
END_OBJECT                 = COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "SPARE"
    DESCRIPTION            =   "Currently not used."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   41
    BYTES                  =   6
    ITEMS                  =   3
    ITEM_BYTES             =   2
END_OBJECT                 =   COLUMN

OBJECT                      = CONTAINER
    NAME                    = FRAME_STRUCTURE
    START_BYTE              = 47
    BYTES                   =8
    REPETITIONS             = 256
    DESCRIPTION             = "Container for the 256 repeating
        DAQ samples of AC, DC, phase and Z position signal."

   OBJECT                  =   COLUMN
       NAME                =   "AC_SAMPLE"
       DESCRIPTION         =   "Cantilever AC signal sample."
       DATA_TYPE           =   MSB_INTEGER
       START_BYTE          =   1
       BYTES               =   2
       SCALING_FACTOR      =   3.0518E-04
       OFFSET              =   0.0
       UNIT                =   VOLT
       FORMAT              =   "F6.2"
       DERIVED_MINIMUM     =   0.0
       DERIVED_MAXIMUM     =   10.0
   END_OBJECT              =   COLUMN

   OBJECT                  =   COLUMN
       NAME                =   "DC_SAMPLE"
       DESCRIPTION         =   "Cantilever DC signal samples."
       DATA_TYPE           =   MSB_INTEGER
       START_BYTE          =   3
       BYTES               =   2
       SCALING_FACTOR      =   3.0518E-04
       OFFSET              =   0.0
       UNIT                =   VOLT
       FORMAT              =   "F6.2"
       DERIVED_MINIMUM     =   -10.0
       DERIVED_MAXIMUM     =   +10.0
   END_OBJECT              =   COLUMN

   OBJECT                  =   COLUMN
       NAME                =   "PHASE_SAMPLE"
       DESCRIPTION         =   "Cantilever phase signal samples."
       DATA_TYPE           =   MSB_INTEGER
       START_BYTE          =   5
       BYTES               =   2
       SCALING_FACTOR      =   5.4932E-03
       OFFSET              =   0.0
       UNIT                =   DEGREE
       FORMAT              =   "F6.1"
       DERIVED_MINIMUM     =   -180.0
       DERIVED_MAXIMUM     =   +180.0
   END_OBJECT              =   COLUMN

   OBJECT                  =   COLUMN
       NAME                =   "Z_POS_SAMPLE"
       DESCRIPTION         =   "Z piezo position monitor (strain gauge)."
       DATA_TYPE           =   MSB_INTEGER
       START_BYTE          =   7
       BYTES               =   2
       SCALING_FACTOR      =   3.0518E-04
       OFFSET              =   0.0
       UNIT                =   VOLT
       FORMAT              =   "F6.2"
       DERIVED_MINIMUM     =   -10.0
                                                    Document No.     :   MID-IWF-TN-0087
             ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
             Interface Control Document             Date             :   1 April 2016
                                                    Page             :   87

       DERIVED_MAXIMUM        = +10.0
   END_OBJECT                 = COLUMN

END_OBJECT                    = CONTAINER

OBJECT                        =   COLUMN
    NAME                      =   "CRC16_CHECKSUM"
    DESCRIPTION               =   "Telemetry packet checksum (CRC 16)."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   2095
    BYTES                     =   2
END_OBJECT                    =   COLUMN
                                                                Document No.     :   MID-IWF-TN-0087
                    ROSETTA-MIDAS to PSA                        Issue/Rev. No.   :   1.4
                    Interface Control Document                  Date             :   1 April 2016
                                                                Page             :   88


4.3.5 Data Product Design - Single Point Sampling Data

    The MIDAS single point sampling data files are binary tables containing the plain telemetry
    packets as retrieved from the DDS. Each data file has associated a detached PDS label with the
    same name as the data file it describes, but with the extension .LBL. The data file columns are
    defined in a separate format file referred to by the ^STRUCTURE keyword in the PDS labels:
        *   Data directory:    /DATA/SPS
        *   File naming:       SPS_yydddhh_yydddhh_nnn_tt.DAT
        *   File structure:    /LABEL/SPS_PREFIX.FMT
    Parameters having a physical representation can be calibrated by applying the OFFSET,
    SCALING_FACTOR and UNIT keywords (defined in the related column object in the format file)
    to the raw value:
        *   physical_value = OFFSET + raw_value*SCALING_FACTOR [UNIT]
    A single point sampling scan comprises n (n=1-65535) scan cycles with 4 data channels of 256
    samples each. This data can be mapped to a time series table consisting of n rows and 4
    interleaved columns with 256 items. Thus the sampling parameter interval of the table object is
    256 times the sampling parameter interval of the associated column object. The time range for a
    given scan is defined by the following keywords of the TIME_SERIES object:
        *   Scan cycles:       ROWS (total number of samples per channel = 256*ROWS)
        *   Time step:         SAMPLING_PARAMETER_INTERVAL/256
        *   Time range:        (256*ROWS - 1)*SAMPLING_PARAMETER_INTERVAL/256


    A typical PDS label for a single point sampling data file is given below:


    PDS_VERSION_ID                      = PDS3
    LABEL_REVISION_NOTE                 = "<LABEL_REVISION_NOTE>"

    RECORD_TYPE                         = FIXED_LENGTH
    RECORD_BYTES                        = 2096
    FILE_RECORDS                        = <FILE_RECORDS>

    DATA_SET_ID                         = "<DATA_SET_ID>"
    DATA_SET_NAME                       = "<DATA_SET_NAME>"

    PRODUCT_ID                          =   "<PRODUCT_ID>"
    PRODUCT_VERSION_ID                  =   "<PRODUCT_VERSION_ID>"
    PRODUCT_CREATION_TIME               =   <PRODUCT_CREATION_TIME>
    PRODUCT_TYPE                        =   EDR
    PROCESSING_LEVEL_ID                 =   <PROCESSING_LEVEL_ID>

    MISSION_ID                          = ROSETTA
    MISSION_NAME                        = "INTERNATIONAL ROSETTA MISSION"
    MISSION_PHASE_NAME                  = "<MISSION_PHASE_NAME>"

    INSTRUMENT_HOST_ID                  =   <INSTRUMENT_HOST_ID>
    INSTRUMENT_HOST_NAME                =   "<INSTRUMENT_HOST_NAME>"
    INSTRUMENT_ID                       =   <INSTRUMENT_ID>
    INSTRUMENT_NAME                     =   "<INSTRUMENT_NAME>"
    INSTRUMENT_TYPE                     =   "<INSTRUMENT_TYPE>"
    INSTRUMENT_MODE_ID                  =   <INSTRUMENT_MODE_ID>
    INSTRUMENT_MODE_DESC                =   "<INSTRUMENT_MODE_DESC>"

    TARGET_NAME                         = "<TARGET_NAME>"
    TARGET_TYPE                         = "<TARGET_TYPE>"
                                                        Document No.     :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                      Issue/Rev. No.   :   1.4
              Interface Control Document                Date             :   1 April 2016
                                                        Page             :   89


START_TIME                        =   <START_TIME>
STOP_TIME                         =   <STOP_TIME>
SPACECRAFT_CLOCK_START_COUNT      =   "<START_COUNT>"
SPACECRAFT_CLOCK_STOP_COUNT       =   "<STOP_COUNT>"
NATIVE_START_TIME                 =   <NATIVE_START_TIME>
NATIVE_STOP_TIME                  =   <NATIVE_STOP_TIME>

PRODUCER_ID                       = "<PRODUCER_ID>"
PRODUCER_FULL_NAME                = "<PRODUCER_FULL_NAME>"
PRODUCER_INSTITUTION_NAME         = "<PRODUCER_INSTITUTION_NAME>"

DATA_QUALITY_ID                   = <DATA_QUALITY_ID>
DATA_QUALITY_DESC                 = "<DATA_QUALITY_DESC>"

/* GEOMETRY INFORMATION */

SC_SUN_POSITION_VECTOR            =   <SC_SUN_POSITION_VECTOR>
SC_TARGET_POSITION_VECTOR         =   <SC_TARGET_POSITION_VECTOR>
SC_TARGET_VELOCITY_VECTOR         =   <SC_TARGET_VELOCITY_VECTOR>
SPACECRAFT_ALTITUDE               =   <SPACECRAFT_ALTITUDE>
SUB_SPACECRAFT_LATITUDE           =   <SUB_SPACECRAFT_LATITUDE>
SUB_SPACECRAFT_LONGITUDE          =   <SUB_SPACECRAFT_LONGITUDE>

/* MISSION SPECIFIC KEYWORDS */

ROSETTA:MIDAS_TIP_NUMBER          =   <MIDAS_TIP_NUMBER>
ROSETTA:MIDAS_TARGET_NUMBER       =   <MIDAS_TARGET_NUMBER>
ROSETTA:MIDAS_TARGET_TYPE         =   <MIDAS_TARGET_TYPE>
ROSETTA:MIDAS_TARGET_NAME         =   <MIDAS_TARGET_NAME>

ROSETTA:MIDAS_LIN_STAGE_POS       =   <MIDAS_LIN_STAGE_POS>
ROSETTA:MIDAS_SEGMENT_NUMBER      =   <MIDAS_SEGMENT_NUMBER>
ROSETTA:MIDAS_SCAN_START_XY       =   <MIDAS_SCAN_START_XY>
ROSETTA:MIDAS_SCAN_STOP_XY        =   <MIDAS_SCAN_STOP_XY>
ROSETTA:MIDAS_SCAN_DIRECTION      =   <MIDAS_SCAN_DIRECTION>

ROSETTA:MIDAS_SCANNING_MODE       = <MIDAS_SCANNING_MODE>

/* DATA FILE POINTER(S) */

^ROW_PREFIX_TABLE                 = "<FILE_NAME>"
^TIME_SERIES                      = "<FILE_NAME>"

/* DATA OBJECT DEFINITION(S) */

OBJECT                            =   ROW_PREFIX_TABLE
    NAME                          =   PKT_HEADER
    INTERCHANGE_FORMAT            =   BINARY
    ROWS                          =   <FILE_RECORDS>
    COLUMNS                       =   22
    ROW_BYTES                     =   46
    ROW_SUFFIX_BYTES              =   2050
    DESCRIPTION                   =   "Control data prefix table"
    ^STRUCTURE                    =   "SPS_PREFIX.FMT"
END_OBJECT                        =   ROW_PREFIX_TABLE

OBJECT                            =   TIME_SERIES
    NAME                          =   CONTROL_DATA
    INTERCHANGE_FORMAT            =   BINARY
    ROWS                          =   <FILE_RECORDS>
    COLUMNS                       =   4
    ROW_PREFIX_BYTES              =   46
    ROW_BYTES                     =   2048
    ROW_SUFFIX_BYTES              =   2
    SAMPLING_PARAMETER_NAME       =   TIME
    SAMPLING_PARAMETER_UNIT       =   SECONDS
    SAMPLING_PARAMETER_INTERVAL   =   3.6900E-1
    DESCRIPTION                   =   "MIDAS hi-res sampling data"

   OBJECT                         =   COLUMN
       NAME                       =   AC_SAMPLES
       DATA_TYPE                  =   MSB_INTEGER
       START_BYTE                 =   1
       BYTES                      =   2042
                                                           Document No.     :   MID-IWF-TN-0087
                ROSETTA-MIDAS to PSA                       Issue/Rev. No.   :   1.4
                Interface Control Document                 Date             :   1 April 2016
                                                           Page             :   90

          ITEMS                   = 256
          ITEM_BYTES              =2
          ITEM_OFFSET             =8
          SAMPLING_PARAMETER_NAME = TIME
          SAMPLING_PARAMETER_UNIT = SECONDS
          SAMPLING_PARAMETER_INTERVAL = 1.4414E-3
          SCALING_FACTOR          = 3.0518E-04
          OFFSET                  = 0.0
          DERIVED_MINIMUM         = 0.0
          DERIVED_MAXIMUM         = 10.0
      END_OBJECT                  = COLUMN

      OBJECT                      = COLUMN
          NAME                    = DC_SAMPLES
          DATA_TYPE               = MSB_INTEGER
          START_BYTE              =3
          BYTES                   = 2042
          ITEMS                   = 256
          ITEM_BYTES              =2
          ITEM_OFFSET             =8
          SAMPLING_PARAMETER_NAME = TIME
          SAMPLING_PARAMETER_UNIT = SECONDS
          SAMPLING_PARAMETER_INTERVAL = 1.4414E-3
          SCALING_FACTOR          = 3.0518E-04
          OFFSET                  = 0.0
          DERIVED_MINIMUM         = 0.0
          DERIVED_MAXIMUM         = 10.0
      END_OBJECT                  = COLUMN

      OBJECT                      = COLUMN
          NAME                    = PHASE_SAMPLES
          DATA_TYPE               = MSB_INTEGER
          START_BYTE              =5
          BYTES                   = 2042
          ITEMS                   = 256
          ITEM_BYTES              =2
          ITEM_OFFSET             =8
          SAMPLING_PARAMETER_NAME = TIME
          SAMPLING_PARAMETER_UNIT = SECONDS
          SAMPLING_PARAMETER_INTERVAL = 1.4414E-3
          SCALING_FACTOR          = 3.0518E-04
          OFFSET                  = 0.0
          DERIVED_MINIMUM         = 0.0
          DERIVED_MAXIMUM         = 10.0
      END_OBJECT                  = COLUMN

    OBJECT                      = COLUMN
        NAME                    = Z_POS_SAMPLES
        DATA_TYPE               = MSB_INTEGER
        START_BYTE              =7
        BYTES                   = 2042
        ITEMS                   = 256
        ITEM_BYTES              =2
        ITEM_OFFSET             =8
        SAMPLING_PARAMETER_NAME = TIME
        SAMPLING_PARAMETER_UNIT = SECONDS
        SAMPLING_PARAMETER_INTERVAL = 1.4414E-3
        SCALING_FACTOR          = 3.0518E-04
        OFFSET                  = 0.0
        DERIVED_MINIMUM         = 0.0
        DERIVED_MAXIMUM         = 10.0
    END_OBJECT                  = COLUMN
END_OBJECT                      = TIME_SERIES

END


The single point sampling prefix structure is defined as follows:



      /* SPS PREFIX STRUCTURE */

      OBJECT                        = COLUMN
                                                 Document No.      :   MID-IWF-TN-0087
          ROSETTA-MIDAS to PSA                   Issue/Rev. No.    :   1.4
          Interface Control Document             Date              :   1 April 2016
                                                 Page              :   91

    NAME                   =   "PACKET_ID"
    DESCRIPTION            =   "Telemetry packet identifier."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   1
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "PACKET_SEQUENCE_CONTROL"
    DESCRIPTION            =   "Telemetry packet sequence counter."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   3
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "PACKET_LENGTH"
    DESCRIPTION            =   "Telemetry packet length."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   5
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "PACKET_OBT_SECONDS"
    DESCRIPTION            =   "S/C clock count at packet generation."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   7
    BYTES                  =   4
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "PACKET_OBT_FRACTION"
    DESCRIPTION            =   "Fractional part of S/C clock count."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   11
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "PACKET_PUS_AND_CRC"
    DESCRIPTION            =   "Telemetry packet PUS-Version and CRC flag."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   13
    BYTES                  =   1
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "PACKET_TYPE"
    DESCRIPTION            =   "Telemetry packet type."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   14
    BYTES                  =   1
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "PACKET_SUBTYPE"
    DESCRIPTION            =   "Telemetry packet sub-type."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   15
    BYTES                  =   1
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "PACKET_PAD_FIELD"
    DESCRIPTION            =   "Telemetry packet padding field."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   16
    BYTES                  =   1
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "STRUCTURE_ID"
    DESCRIPTION            =   "Telemetry packet structure identifier."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
                                                 Document No.       :   MID-IWF-TN-0087
          ROSETTA-MIDAS to PSA                   Issue/Rev. No.     :   1.4
          Interface Control Document             Date               :   1 April 2016
                                                 Page               :   92

    START_BYTE             = 17
    BYTES                  =2
END_OBJECT                 = COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "SOFTWARE_VERSION"
    DESCRIPTION            =   "On-board software version."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   19
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "LINEAR_POS"
    DESCRIPTION            =   "Linear stage position sensor readout."
    DATA_TYPE              =   MSB_INTEGER
    START_BYTE             =   21
    BYTES                  =   2
    OFFSET                 =   1.52590E-004
    SCALING_FACTOR         =   3.05180E-004
    UNIT                   =   VOLT
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "WHEEL_POS"
    DESCRIPTION            =   "Current wheel position (segment number)."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   23
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "TIP_NUMBER"
    DESCRIPTION            =   "Number of selected tip."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   25
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "X_ORIGIN"
    DESCRIPTION            =   "Scan origin in X direction (DAC units)."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   27
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "Y_ORIGIN"
    DESCRIPTION            =   "Scan origin in Y direction (DAC units)."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   29
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "STEP_SIZE"
    DESCRIPTION            =   "Line scan step size (DAC units)."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   31
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "NUM_STEPS"
    DESCRIPTION            =   "Number of line scan steps (pixels)."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   33
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     = COLUMN
    NAME                   = "SCAN_MODE"
    DESCRIPTION            = "Scanning mode for image acquisition):
                              Bit 0-7: 0=DYN[amic], 1=CON[tact], 2=MAG[netic],
                                                 Document No.     :   MID-IWF-TN-0087
          ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
          Interface Control Document             Date             :   1 April 2016
                                                 Page             :   93

                                 Bit  8: line scan direction (0=std.,1=reverse),
                                 Bit 12: main scan direction (0=X,1=Y)"
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   35
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "MAIN_SCAN_CNT"
    DESCRIPTION            =   "Current main scan counter."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   37
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "NUM_SAMPLES"
    DESCRIPTION            =   "Total number of measurements."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   39
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "SPARE"
    DESCRIPTION            =   "Currently not used."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   41
    BYTES                  =   6
    ITEMS                  =   3
    ITEM_BYTES             =   2
END_OBJECT                 =   COLUMN
                                                                Document No.     :   MID-IWF-TN-0087
                    ROSETTA-MIDAS to PSA                        Issue/Rev. No.   :   1.4
                    Interface Control Document                  Date             :   1 April 2016
                                                                Page             :   94


4.3.6 Data Product Design - Line Scan Data

    The MIDAS line scan data files are binary tables containing the plain telemetry packets as
    retrieved from the DDS. Each data file has associated a detached PDS label with the same
    name as the data file it describes, but with the extension .LBL. The data file columns are defined
    in a separate format file referred to by the ^STRUCTURE keyword in the PDS labels:
        *   Data directory:    /DATA/LIN
        *   File naming:       LIN_yydddhh_yydddhh_nnn_tt.DAT
        *   File structure:    /LABEL/LIN_STRUCTURE.FMT
    Parameters having a physical representation can be calibrated by applying the OFFSET,
    SCALING_FACTOR and UNIT keywords (defined in the related column object in the format file)
    to the raw value:
        *   physical_value = OFFSET + raw_value*SCALING_FACTOR [UNIT]
    A line scan can have n (n=32, 64, .., 512) data points depending on the commanded number of
    pixels in the main scan direction. The line scan records have a fixed size, capable of holding the
    maximum number of 512 line scan data points. The actual number of data points for a given
    record can be determined from the NUM_STEPS column.
    Note: The column TIP_NUMBER is always 0 for telemetry data generated prior to payload
    checkout #4 (corrected via S/W upload). Nevertheless, the proper value can be obtained from
    the mission specific keyword MIDAS_TIP_NUMBER which is included in the PDS label.


    A typical PDS label for a line scan data file is given below:


    PDS_VERSION_ID                      = PDS3
    LABEL_REVISION_NOTE                 = "<LABEL_REVISION_NOTE>"

    RECORD_TYPE                         = FIXED_LENGTH
    RECORD_BYTES                        = 1072
    FILE_RECORDS                        = <FILE_RECORDS>

    DATA_SET_ID                         = "<DATA_SET_ID>"
    DATA_SET_NAME                       = "<DATA_SET_NAME>"

    PRODUCT_ID                          =   "<PRODUCT_ID>"
    PRODUCT_VERSION_ID                  =   "<PRODUCT_VERSION_ID>"
    PRODUCT_CREATION_TIME               =   <PRODUCT_CREATION_TIME>
    PRODUCT_TYPE                        =   EDR
    PROCESSING_LEVEL_ID                 =   <PROCESSING_LEVEL_ID>

    MISSION_ID                          = ROSETTA
    MISSION_NAME                        = "INTERNATIONAL ROSETTA MISSION"
    MISSION_PHASE_NAME                  = "<MISSION_PHASE_NAME>"

    INSTRUMENT_HOST_ID                  =   <INSTRUMENT_HOST_ID>
    INSTRUMENT_HOST_NAME                =   "<INSTRUMENT_HOST_NAME>"
    INSTRUMENT_ID                       =   <INSTRUMENT_ID>
    INSTRUMENT_NAME                     =   "<INSTRUMENT_NAME>"
    INSTRUMENT_TYPE                     =   "<INSTRUMENT_TYPE>"
    INSTRUMENT_MODE_ID                  =   <INSTRUMENT_MODE_ID>
    INSTRUMENT_MODE_DESC                =   "<INSTRUMENT_MODE_DESC>"

    TARGET_NAME                         = "<TARGET_NAME>"
    TARGET_TYPE                         = "<TARGET_TYPE>"

    START_TIME                          = <START_TIME>
    STOP_TIME                           = <STOP_TIME>
                                                          Document No.     :   MID-IWF-TN-0087
                ROSETTA-MIDAS to PSA                      Issue/Rev. No.   :   1.4
                Interface Control Document                Date             :   1 April 2016
                                                          Page             :   95

SPACECRAFT_CLOCK_START_COUNT        =   "<START_COUNT>"
SPACECRAFT_CLOCK_STOP_COUNT         =   "<STOP_COUNT>"
NATIVE_START_TIME                   =   <NATIVE_START_TIME>
NATIVE_STOP_TIME                    =   <NATIVE_STOP_TIME>

PRODUCER_ID                         = "<PRODUCER_ID>"
PRODUCER_FULL_NAME                  = "<PRODUCER_FULL_NAME>"
PRODUCER_INSTITUTION_NAME           = "<PRODUCER_INSTITUTION_NAME>"

DATA_QUALITY_ID                     = <DATA_QUALITY_ID>
DATA_QUALITY_DESC                   = "<DATA_QUALITY_DESC>"

/* GEOMETRY INFORMATION */

SC_SUN_POSITION_VECTOR              =   <SC_SUN_POSITION_VECTOR>
SC_TARGET_POSITION_VECTOR           =   <SC_TARGET_POSITION_VECTOR>
SC_TARGET_VELOCITY_VECTOR           =   <SC_TARGET_VELOCITY_VECTOR>
SPACECRAFT_ALTITUDE                 =   <SPACECRAFT_ALTITUDE>
SUB_SPACECRAFT_LATITUDE             =   <SUB_SPACECRAFT_LATITUDE>
SUB_SPACECRAFT_LONGITUDE            =   <SUB_SPACECRAFT_LONGITUDE>

/* MISSION SPECIFIC KEYWORDS */

ROSETTA:MIDAS_TIP_NUMBER            =   <MIDAS_TIP_NUMBER>
ROSETTA:MIDAS_TARGET_NUMBER         =   <MIDAS_TARGET_NUMBER>
ROSETTA:MIDAS_TARGET_TYPE           =   <MIDAS_TARGET_TYPE>
ROSETTA:MIDAS_TARGET_NAME           =   <MIDAS_TARGET_NAME>

ROSETTA:MIDAS_LIN_STAGE_POS         =   <MIDAS_LIN_STAGE_POS>
ROSETTA:MIDAS_SEGMENT_NUMBER        =   <MIDAS_SEGMENT_NUMBER>
ROSETTA:MIDAS_SCAN_START_XY         =   <MIDAS_SCAN_START_XY>
ROSETTA:MIDAS_SCAN_STOP_XY          =   <MIDAS_SCAN_STOP_XY>
ROSETTA:MIDAS_SCAN_DIRECTION        =   <MIDAS_SCAN_DIRECTION>

ROSETTA:MIDAS_SCANNING_MODE         = <MIDAS_SCANNING_MODE>

/* DATA FILE POINTER(S) */

^LINE_SCAN_TABLE                    = "<FILE_NAME>"

/* DATA OBJECT DEFINITION(S) */

OBJECT                              =   LINE_SCAN_TABLE
    INTERCHANGE_FORMAT              =   BINARY
    ROWS                            =   <FILE_RECORDS>
    COLUMNS                         =   23
    ROW_BYTES                       =   1072
    DESCRIPTION                     =   "MIDAS line scan data"
    ^STRUCTURE                      =   "LIN_STRUCTURE.FMT"
END_OBJECT                          =   LINE_SCAN_TABLE

END


The line scan data structure is defined as follows:



      /* LINE SCAN FRAME STRUCTURE */

      OBJECT                        =   COLUMN
          NAME                      =   "PACKET_ID"
          DESCRIPTION               =   "Telemetry packet identifier."
          DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
          START_BYTE                =   1
          BYTES                     =   2
      END_OBJECT                    =   COLUMN

      OBJECT                        =   COLUMN
          NAME                      =   "PACKET_SEQUENCE_CONTROL"
          DESCRIPTION               =   "Telemetry packet sequence counter."
          DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
          START_BYTE                =   3
          BYTES                     =   2
                                                    Document No.      :   MID-IWF-TN-0087
             ROSETTA-MIDAS to PSA                   Issue/Rev. No.    :   1.4
             Interface Control Document             Date              :   1 April 2016
                                                    Page              :   96

END_OBJECT                    = COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "PACKET_LENGTH"
    DESCRIPTION               =   "Telemetry packet length."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   5
    BYTES                     =   2
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "PACKET_OBT_SECONDS"
    DESCRIPTION               =   "S/C clock count at packet generation."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   7
    BYTES                     =   4
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "PACKET_OBT_FRACTION"
    DESCRIPTION               =   "Fractional part of S/C clock count."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   11
    BYTES                     =   2
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "PACKET_PUS_AND_CRC"
    DESCRIPTION               =   "Telemetry packet PUS-Version and CRC flag."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   13
    BYTES                     =   1
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "PACKET_TYPE"
    DESCRIPTION               =   "Telemetry packet type."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   14
    BYTES                     =   1
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "PACKET_SUBTYPE"
    DESCRIPTION               =   "Telemetry packet sub-type."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   15
    BYTES                     =   1
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "PACKET_PAD_FIELD"
    DESCRIPTION               =   "Telemetry packet padding field."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   16
    BYTES                     =   1
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "STRUCTURE_ID"
    DESCRIPTION               =   "Telemetry packet structure identifier."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   17
    BYTES                     =   2
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "SOFTWARE_VERSION"
    DESCRIPTION               =   "On-board software version."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   19
    BYTES                     =   2
END_OBJECT                    =   COLUMN

OBJECT                        = COLUMN
                                                 Document No.       :   MID-IWF-TN-0087
          ROSETTA-MIDAS to PSA                   Issue/Rev. No.     :   1.4
          Interface Control Document             Date               :   1 April 2016
                                                 Page               :   97

    NAME                   =   "LINEAR_POS"
    DESCRIPTION            =   "Linear stage position sensor readout."
    DATA_TYPE              =   MSB_INTEGER
    START_BYTE             =   21
    BYTES                  =   2
    OFFSET                 =   1.52590E-004
    SCALING_FACTOR         =   3.05180E-004
    UNIT                   =   VOLT
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "WHEEL_POS"
    DESCRIPTION            =   "Current wheel position (segment number)."
    DATA_TYPE              =   MSB_INTEGER
    START_BYTE             =   23
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "TIP_NUMBER"
    DESCRIPTION            =   "Number of selected tip."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   25
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "X_ORIGIN"
    DESCRIPTION            =   "Scan origin in X direction (DAC units)."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   27
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "Y_ORIGIN"
    DESCRIPTION            =   "Scan origin in Y direction (DAC units)."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   29
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "STEP_SIZE"
    DESCRIPTION            =   "Line scan step size (DAC units)."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   31
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "NUM_STEPS"
    DESCRIPTION            =   "Number of line scan steps (pixels)."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   33
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     = COLUMN
    NAME                   = "SCAN_MODE"
    DESCRIPTION            = "Scanning mode for image acquisition):
                              Bit 0-7: 0=DYN[amic], 1=CON[tact], 2=MAG[netic],
                              Bit   8: line scan direction (0=std.,1=reverse),
                              Bit 12: main scan direction (0=X,1=Y)"
    DATA_TYPE              = MSB_UNSIGNED_INTEGER
    START_BYTE             = 35
    BYTES                  =2
END_OBJECT                 = COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "LINE_SCAN_CNT"
    DESCRIPTION            =   "Current line scan counter."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   37
    BYTES                  =   2
                                                    Document No.     :   MID-IWF-TN-0087
             ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
             Interface Control Document             Date             :   1 April 2016
                                                    Page             :   98

END_OBJECT                    = COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "SPARE"
    DESCRIPTION               =   "Currently not used."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   39
    BYTES                     =   8
    ITEMS                     =   4
    ITEM_BYTES                =   2
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "Z_SET_VALUE"
    DESCRIPTION               =   "Line scan data vector (Z piezo DAC set value)."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   47
    BYTES                     =   1024
    ITEMS                     =   512
    ITEM_BYTES                =   2
    SCALING_FACTOR            =   1.6400E-001
    OFFSET                    =   0.0000E+000
    UNIT                      =   "nm"
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "CRC16_CHECKSUM"
    DESCRIPTION               =   "Telemetry packet checksum (CRC 16)."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   1071
    BYTES                     =   2
END_OBJECT                    =   COLUMN
                                                                 Document No.     :   MID-IWF-TN-0087
                    ROSETTA-MIDAS to PSA                         Issue/Rev. No.   :   1.4
                    Interface Control Document                   Date             :   1 April 2016
                                                                 Page             :   99


4.3.7 Data Product Design - Image Scan Data

    The MIDAS image data files are stored in BCR format which is described in chapter 3.2.4. Each
    data file has associated a detached PDS label with the same name as the data file it describes,
    but with the extension .LBL:
        *   Data directory:    /DATA/IMG
        *   File naming:       IMG_yydddhh_yydddhh_nnn_dd.IMG


    A typical PDS label for an image data file is given below:


    PDS_VERSION_ID                     = PDS3
    LABEL_REVISION_NOTE                = "<LABEL_REVISION_NOTE>"

    RECORD_TYPE                        = FIXED_LENGTH
    RECORD_BYTES                       = 2048
    FILE_RECORDS                       = <FILE_RECORDS>

    DATA_SET_ID                        = "<DATA_SET_ID>"
    DATA_SET_NAME                      = "<DATA_SET_NAME>"

    PRODUCT_ID                         =   "<PRODUCT_ID>"
    PRODUCT_VERSION_ID                 =   "<PRODUCT_VERSION_ID>"
    PRODUCT_CREATION_TIME              =   <PRODUCT_CREATION_TIME>
    PRODUCT_TYPE                       =   EDR
    PROCESSING_LEVEL_ID                =   <PROCESSING_LEVEL_ID>

    MISSION_ID                         = ROSETTA
    MISSION_NAME                       = "INTERNATIONAL ROSETTA MISSION"
    MISSION_PHASE_NAME                 = "<MISSION_PHASE_NAME>"

    INSTRUMENT_HOST_ID                 =   <INSTRUMENT_HOST_ID>
    INSTRUMENT_HOST_NAME               =   "<INSTRUMENT_HOST_NAME>"
    INSTRUMENT_ID                      =   <INSTRUMENT_ID>
    INSTRUMENT_NAME                    =   "<INSTRUMENT_NAME>"
    INSTRUMENT_TYPE                    =   "<INSTRUMENT_TYPE>"
    INSTRUMENT_MODE_ID                 =   <INSTRUMENT_MODE_ID>
    INSTRUMENT_MODE_DESC               =   "<INSTRUMENT_MODE_DESC>"

    TARGET_NAME                        = "<TARGET_NAME>"
    TARGET_TYPE                        = "<TARGET_TYPE>"

    START_TIME                         =   <START_TIME>
    STOP_TIME                          =   <STOP_TIME>
    SPACECRAFT_CLOCK_START_COUNT       =   "<START_COUNT>"
    SPACECRAFT_CLOCK_STOP_COUNT        =   "<STOP_COUNT>"
    NATIVE_START_TIME                  =   <NATIVE_START_TIME>
    NATIVE_STOP_TIME                   =   <NATIVE_STOP_TIME>

    PRODUCER_ID                        = "<PRODUCER_ID>"
    PRODUCER_FULL_NAME                 = "<PRODUCER_FULL_NAME>"
    PRODUCER_INSTITUTION_NAME          = "<PRODUCER_INSTITUTION_NAME>"

    DATA_QUALITY_ID                    = <DATA_QUALITY_ID>
    DATA_QUALITY_DESC                  = "<DATA_QUALITY_DESC>"

    /* GEOMETRY INFORMATION */

    SC_SUN_POSITION_VECTOR             =   <SC_SUN_POSITION_VECTOR>
    SC_TARGET_POSITION_VECTOR          =   <SC_TARGET_POSITION_VECTOR>
    SC_TARGET_VELOCITY_VECTOR          =   <SC_TARGET_VELOCITY_VECTOR>
    SPACECRAFT_ALTITUDE                =   <SPACECRAFT_ALTITUDE>
    SUB_SPACECRAFT_LATITUDE            =   <SUB_SPACECRAFT_LATITUDE>
    SUB_SPACECRAFT_LONGITUDE           =   <SUB_SPACECRAFT_LONGITUDE>
                                                        Document No.     :   MID-IWF-TN-0087
              ROSETTA-MIDAS to PSA                      Issue/Rev. No.   :   1.4
              Interface Control Document                Date             :   1 April 2016
                                                        Page             :   100

/* MISSION SPECIFIC KEYWORDS */

ROSETTA:MIDAS_TIP_NUMBER          =   <MIDAS_TIP_NUMBER>
ROSETTA:MIDAS_TARGET_NUMBER       =   <MIDAS_TARGET_NUMBER>
ROSETTA:MIDAS_TARGET_TYPE         =   <MIDAS_TARGET_TYPE>
ROSETTA:MIDAS_TARGET_NAME         =   <MIDAS_TARGET_NAME>

ROSETTA:MIDAS_LIN_STAGE_POS       =   <MIDAS_LIN_STAGE_POS>
ROSETTA:MIDAS_SEGMENT_NUMBER      =   <MIDAS_SEGMENT_NUMBER>
ROSETTA:MIDAS_SCAN_START_XY       =   <MIDAS_SCAN_START_XY>
ROSETTA:MIDAS_SCAN_STOP_XY        =   <MIDAS_SCAN_STOP_XY>
ROSETTA:MIDAS_SCAN_DIRECTION      =   <MIDAS_SCAN_DIRECTION>

ROSETTA:MIDAS_SCANNING_MODE       = <MIDAS_SCANNING_MODE>
ROSETTA:MIDAS_SCAN_DATA_TYPE      = <MIDAS_SCAN_DATA_TYPE>

/* DATA FILE POINTER(S) */

^BCR_HEADER                       = "<FILE_NAME>"
^BCR_IMAGE                        = ("<FILE_NAME>",2)

OBJECT                          = BCR_HEADER
    BYTES                       = 2048
    HEADER_TYPE                 = TEXT
    INTERCHANGE_FORMAT          = BINARY
    RECORDS                     =1
    DESCRIPTION                 ="
    BCR-STM format as used by the Image Metrology SPIP application.
    Parameter definitions are given in file /DOCUMENT/MID_EIDC.pdf"
END_OBJECT                      = BCR_HEADER

OBJECT                            =   BCR_IMAGE
    LINES                         =   <LINES>
    LINE_SAMPLES                  =   <LINE_SAMPLES>
    SAMPLE_BITS                   =   16
    SAMPLE_TYPE                   =   LSB_UNSIGNED_INTEGER
    DESCRIPTION                   =   "<DESCRIPTION>"
    SCALING_FACTOR                =   <SCALING_FACTOR>
    OFFSET                        =   <OFFSET>
END_OBJECT                        =   BCR_IMAGE

END
                                                                Document No.     :   MID-IWF-TN-0087
                    ROSETTA-MIDAS to PSA                        Issue/Rev. No.   :   1.4
                    Interface Control Document                  Date             :   1 April 2016
                                                                Page             :   101


4.3.8 Data Product Design - Feature Vector Data

    The MIDAS feature vector data files are binary tables containing the plain telemetry packets as
    retrieved from the DDS. Each data file has associated a detached PDS label with the same
    name as the data file it describes, but with the extension .LBL. The data file columns are defined
    in a separate format file referred to by the ^STRUCTURE keyword in the PDS labels:
        *   Data directory:    /DATA/ROI
        *   File naming:       ROI_yydddhh_yydddhh_nnn_ff.DAT
        *   File structure:    /LABEL/ROI_STRUCTURE.FMT
    Parameters having a physical representation can be calibrated by applying the OFFSET,
    SCALING_FACTOR and UNIT keywords (defined in the related column object in the format file)
    to the raw value:
        *   physical_value = OFFSET + raw_value*SCALING_FACTOR [UNIT]
    A feature vector record comprises 64 feature vector frames having identical vector parameters.
    The actual number of feature vectors for a record is given in the NUM_VECTORS column. The
    repeating structure of the 64 feature vectors is defined by means of the PDS CONTAINER
    object.


    A typical PDS label for a feature vector data file is given below:


    PDS_VERSION_ID                      = PDS3
    LABEL_REVISION_NOTE                 = "<LABEL_REVISION_NOTE>"

    RECORD_TYPE                         = FIXED_LENGTH
    RECORD_BYTES                        = 2096
    FILE_RECORDS                        = <FILE_RECORDS>

    DATA_SET_ID                         = "<DATA_SET_ID>"
    DATA_SET_NAME                       = "<DATA_SET_NAME>"

    PRODUCT_ID                          =   "<PRODUCT_ID>"
    PRODUCT_VERSION_ID                  =   "<PRODUCT_VERSION_ID>"
    PRODUCT_CREATION_TIME               =   <PRODUCT_CREATION_TIME>
    PRODUCT_TYPE                        =   EDR
    PROCESSING_LEVEL_ID                 =   <PROCESSING_LEVEL_ID>

    MISSION_ID                          = ROSETTA
    MISSION_NAME                        = "INTERNATIONAL ROSETTA MISSION"
    MISSION_PHASE_NAME                  = "<MISSION_PHASE_NAME>"

    INSTRUMENT_HOST_ID                  =   <INSTRUMENT_HOST_ID>
    INSTRUMENT_HOST_NAME                =   "<INSTRUMENT_HOST_NAME>"
    INSTRUMENT_ID                       =   <INSTRUMENT_ID>
    INSTRUMENT_NAME                     =   "<INSTRUMENT_NAME>"
    INSTRUMENT_TYPE                     =   "<INSTRUMENT_TYPE>"
    INSTRUMENT_MODE_ID                  =   <INSTRUMENT_MODE_ID>
    INSTRUMENT_MODE_DESC                =   "<INSTRUMENT_MODE_DESC>"

    TARGET_NAME                         = "<TARGET_NAME>"
    TARGET_TYPE                         = "<TARGET_TYPE>"

    START_TIME                          =   <START_TIME>
    STOP_TIME                           =   <STOP_TIME>
    SPACECRAFT_CLOCK_START_COUNT        =   "<START_COUNT>"
    SPACECRAFT_CLOCK_STOP_COUNT         =   "<STOP_COUNT>"
    NATIVE_START_TIME                   =   <NATIVE_START_TIME>
    NATIVE_STOP_TIME                    =   <NATIVE_STOP_TIME>
                                                          Document No.     :   MID-IWF-TN-0087
                ROSETTA-MIDAS to PSA                      Issue/Rev. No.   :   1.4
                Interface Control Document                Date             :   1 April 2016
                                                          Page             :   102

PRODUCER_ID                         = "<PRODUCER_ID>"
PRODUCER_FULL_NAME                  = "<PRODUCER_FULL_NAME>"
PRODUCER_INSTITUTION_NAME           = "<PRODUCER_INSTITUTION_NAME>"

DATA_QUALITY_ID                     = <DATA_QUALITY_ID>
DATA_QUALITY_DESC                   = "<DATA_QUALITY_DESC>"

/* GEOMETRY INFORMATION */

SC_SUN_POSITION_VECTOR              =   <SC_SUN_POSITION_VECTOR>
SC_TARGET_POSITION_VECTOR           =   <SC_TARGET_POSITION_VECTOR>
SC_TARGET_VELOCITY_VECTOR           =   <SC_TARGET_VELOCITY_VECTOR>
SPACECRAFT_ALTITUDE                 =   <SPACECRAFT_ALTITUDE>
SUB_SPACECRAFT_LATITUDE             =   <SUB_SPACECRAFT_LATITUDE>
SUB_SPACECRAFT_LONGITUDE            =   <SUB_SPACECRAFT_LONGITUDE>

/* DATA FILE POINTER(S) */

^ROI_TABLE                          = "<FILE_NAME>"

/* DATA OBJECT DEFINITION(S) */

OBJECT                              =   ROI_TABLE
    INTERCHANGE_FORMAT              =   BINARY
    ROWS                            =   <FILE_RECORDS>
    COLUMNS                         =   35
    ROW_BYTES                       =   2096
    DESCRIPTION                     =   "MIDAS feature vector data"
    ^STRUCTURE                      =   "ROI_STRUCTURE.FMT"
END_OBJECT                          =   ROI_TABLE

END


The feature vector structure is defined as follows:


      /* MIDAS FEATURE VECTOR FRAME STRUCTURE */

      OBJECT                        =   COLUMN
          NAME                      =   "PACKET_ID"
          DESCRIPTION               =   "Telemetry packet identifier."
          DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
          START_BYTE                =   1
          BYTES                     =   2
      END_OBJECT                    =   COLUMN

      OBJECT                        =   COLUMN
          NAME                      =   "PACKET_SEQUENCE_CONTROL"
          DESCRIPTION               =   "Telemetry packet sequence counter."
          DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
          START_BYTE                =   3
          BYTES                     =   2
      END_OBJECT                    =   COLUMN

      OBJECT                        =   COLUMN
          NAME                      =   "PACKET_LENGTH"
          DESCRIPTION               =   "Telemetry packet length."
          DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
          START_BYTE                =   5
          BYTES                     =   2
      END_OBJECT                    =   COLUMN

      OBJECT                        =   COLUMN
          NAME                      =   "PACKET_OBT_SECONDS"
          DESCRIPTION               =   "S/C clock count at packet generation."
          DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
          START_BYTE                =   7
          BYTES                     =   4
      END_OBJECT                    =   COLUMN

      OBJECT                        = COLUMN
          NAME                      = "PACKET_OBT_FRACTION"
          DESCRIPTION               = "Fractional part of S/C clock count."
                                                 Document No.       :   MID-IWF-TN-0087
          ROSETTA-MIDAS to PSA                   Issue/Rev. No.     :   1.4
          Interface Control Document             Date               :   1 April 2016
                                                 Page               :   103

    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   11
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "PACKET_PUS_AND_CRC"
    DESCRIPTION            =   "Telemetry packet PUS-Version and CRC flag."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   13
    BYTES                  =   1
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "PACKET_TYPE"
    DESCRIPTION            =   "Telemetry packet type."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   14
    BYTES                  =   1
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "PACKET_SUBTYPE"
    DESCRIPTION            =   "Telemetry packet sub-type."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   15
    BYTES                  =   1
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "PACKET_PAD_FIELD"
    DESCRIPTION            =   "Telemetry packet padding field."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   16
    BYTES                  =   1
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "STRUCTURE_ID"
    DESCRIPTION            =   "Telemetry packet structure identifier."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   17
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "SOFTWARE_VERSION"
    DESCRIPTION            =   "On-board software version."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   19
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "DATASET_ID"
    DESCRIPTION            =   "Identifier of analysed data set."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   21
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "TOT_VECTORS"
    DESCRIPTION            =   "Total number of detected features."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   23
    BYTES                  =   2
END_OBJECT                 =   COLUMN

OBJECT                     =   COLUMN
    NAME                   =   "VECTOR_IDX"
    DESCRIPTION            =   "Index of first feature vector (x2)."
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   25
    BYTES                  =   2
                                                    Document No.      :   MID-IWF-TN-0087
             ROSETTA-MIDAS to PSA                   Issue/Rev. No.    :   1.4
             Interface Control Document             Date              :   1 April 2016
                                                    Page              :   104

END_OBJECT                    = COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "NUM_VECTORS"
    DESCRIPTION               =   "Number of feature vectors in packet."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   27
    BYTES                     =   2
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "MIN_Z_VALUE"
    DESCRIPTION               =   "Minimum Z value of image."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   29
    BYTES                     =   2
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "MAX_Z_VALUE"
    DESCRIPTION               =   "Maximum Z value of image."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   31
    BYTES                     =   2
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "SELECTED_IDX"
    DESCRIPTION               =   "Index of favoured feature vector."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   33
    BYTES                     =   2
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "SELECTED_WEIGHT"
    DESCRIPTION               =   "Weighting of favoured feature vector."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   35
    BYTES                     =   2
    SCALING_FACTOR            =   6.1036E-5
    OFFSET                    =   0.0
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "LIN_REG_OFFS"
    DESCRIPTION               =   "Linear regression offset value."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   37
    BYTES                     =   2
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "LIN_REG_XFACT"
    DESCRIPTION               =   "Linear regression X factor (x65535)."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   39
    BYTES                     =   4
END_OBJECT                    =   COLUMN

OBJECT                        =   COLUMN
    NAME                      =   "LIN_REG_YFACT"
    DESCRIPTION               =   "Linear regression Y factor (x65535)."
    DATA_TYPE                 =   MSB_UNSIGNED_INTEGER
    START_BYTE                =   43
    BYTES                     =   4
END_OBJECT                    =   COLUMN

OBJECT                        =   CONTAINER
    NAME                      =   "VECTOR_STRUCTURE"
    START_BYTE                =   47
    BYTES                     =   32
    REPETITIONS               =   64
    DESCRIPTION               =   "Represents the format of the 64
                                   repeating feature vector attributes."
                                                Document No.     :   MID-IWF-TN-0087
         ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
         Interface Control Document             Date             :   1 April 2016
                                                Page             :   105


OBJECT                    =   COLUMN
    NAME                  =   "NUM_POINTS"
    DATA_TYPE             =   MSB_UNSIGNED_INTEGER
    START_BYTE            =   1
    BYTES                 =   2
    DESCRIPTION           =   "Number of feature vector data points."
END_OBJECT                =   COLUMN

OBJECT                    =   COLUMN
    NAME                  =   "X_IDX_MAX"
    DATA_TYPE             =   MSB_UNSIGNED_INTEGER
    START_BYTE            =   3
    BYTES                 =   1
    DESCRIPTION           =   "Maximum X position index."
END_OBJECT                =   COLUMN


OBJECT                    =   COLUMN
    NAME                  =   X_IDX_MIN
    DATA_TYPE             =   MSB_UNSIGNED_INTEGER
    START_BYTE            =   4
    BYTES                 =   1
    DESCRIPTION           =   "Minimum X position index."
END_OBJECT                =   COLUMN

OBJECT                    =   COLUMN
    NAME                  =   Y_IDX_MAX
    DATA_TYPE             =   MSB_UNSIGNED_INTEGER
    START_BYTE            =   5
    BYTES                 =   1
    DESCRIPTION           =   "Maximum y position index."
END_OBJECT                =   COLUMN

OBJECT                    =   COLUMN
    NAME                  =   Y_IDX_MIN
    DATA_TYPE             =   MSB_UNSIGNED_INTEGER
    START_BYTE            =   6
    BYTES                 =   1
    DESCRIPTION           =   "Minimum Y position index."
END_OBJECT                =   COLUMN

OBJECT                    =   COLUMN
    NAME                  =   Z_MAX_LVL
    DATA_TYPE             =   MSB_UNSIGNED_INTEGER
    START_BYTE            =   7
    BYTES                 =   2
    DESCRIPTION           =   "Maximum Z value over threshold level."
END_OBJECT                =   COLUMN

OBJECT                    =   COLUMN
    NAME                  =   X_IDX_SUM
    DATA_TYPE             =   MSB_UNSIGNED_INTEGER
    START_BYTE            =   9
    BYTES                 =   4
    DESCRIPTION           =   "Sum of X position indices."
END_OBJECT                =   COLUMN

OBJECT                    =   COLUMN
    NAME                  =   Y_IDX_SUM
    DATA_TYPE             =   MSB_UNSIGNED_INTEGER
    START_BYTE            =   13
    BYTES                 =   4
    DESCRIPTION           =   "Sum of Y position indices."
END_OBJECT                =   COLUMN

OBJECT                    =   COLUMN
    NAME                  =   Z_IDX_SUM
    DATA_TYPE             =   MSB_UNSIGNED_INTEGER
    START_BYTE            =   17
    BYTES                 =   4
    DESCRIPTION           =   "Sum of Z position indices."
END_OBJECT                =   COLUMN

OBJECT                    = COLUMN
                                                 Document No.     :   MID-IWF-TN-0087
          ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
          Interface Control Document             Date             :   1 April 2016
                                                 Page             :   106

       NAME                =   XX_IDX_SUM
       DATA_TYPE           =   MSB_UNSIGNED_INTEGER
       START_BYTE          =   21
       BYTES               =   4
       DESCRIPTION         =   "Sum of X*X position indices."
   END_OBJECT              =   COLUMN

   OBJECT                  =   COLUMN
       NAME                =   YY_IDX_SUM
       DATA_TYPE           =   MSB_UNSIGNED_INTEGER
       START_BYTE          =   25
       BYTES               =   4
       DESCRIPTION         =   "Sum of Y*Y position indices."
   END_OBJECT              =   COLUMN

    OBJECT                 =   COLUMN
        NAME               =   XY_IDX_SUM
        DATA_TYPE          =   MSB_UNSIGNED_INTEGER
        START_BYTE         =   29
        BYTES              =   4
        DESCRIPTION        =   "Sum of X*Y position indices."
    END_OBJECT             =   COLUMN
END_OBJECT                 =   CONTAINER

OBJECT                     =   COLUMN
    NAME                   =   CRC16_CHECKSUM
    DATA_TYPE              =   MSB_UNSIGNED_INTEGER
    START_BYTE             =   2095
    BYTES                  =   2
    DESCRIPTION            =   "Telemetry packet checksum (CRC 16)."
END_OBJECT                 =   COLUMN
                                                                 Document No.     :   MID-IWF-TN-0087
                    ROSETTA-MIDAS to PSA                         Issue/Rev. No.   :   1.4
                    Interface Control Document                   Date             :   1 April 2016
                                                                 Page             :   107


4.3.9 Data Product Design - Event Data

    The MIDAS event data files are ASCII tables containing the list of events within a given time
    period. Each data file has associated a detached PDS label with the same name as the data file
    it describes, but with the extension .LBL. The data file columns are defined in a separate format
    file referred to by the ^STRUCTURE keyword in the PDS labels:
        *   Data directory:    /DATA/EVN
        *   File naming:       EVN_yydddhh_yydddhh.TAB
        *   File structure:    /LABEL/EVN_STRUCTURE.FMT


    A typical PDS label for an event data file is given below:


    PDS_VERSION_ID                      = PDS3
    LABEL_REVISION_NOTE                 = "<LABEL_REVISION_NOTE>"

    RECORD_TYPE                         = FIXED_LENGTH
    RECORD_BYTES                        = 80
    FILE_RECORDS                        = <FILE_RECORDS>

    DATA_SET_ID                         = "<DATA_SET_ID>"
    DATA_SET_NAME                       = "<DATA_SET_NAME>"

    PRODUCT_ID                          =   "<PRODUCT_ID>"
    PRODUCT_VERSION_ID                  =   "<PRODUCT_VERSION_ID>"
    PRODUCT_CREATION_TIME               =   <PRODUCT_CREATION_TIME>
    PRODUCT_TYPE                        =   EDR
    PROCESSING_LEVEL_ID                 =   <PROCESSING_LEVEL_ID>

    MISSION_ID                          = ROSETTA
    MISSION_NAME                        = "INTERNATIONAL ROSETTA MISSION"
    MISSION_PHASE_NAME                  = "<MISSION_PHASE_NAME>"

    INSTRUMENT_HOST_ID                  =   <INSTRUMENT_HOST_ID>
    INSTRUMENT_HOST_NAME                =   "<INSTRUMENT_HOST_NAME>"
    INSTRUMENT_ID                       =   <INSTRUMENT_ID>
    INSTRUMENT_NAME                     =   "<INSTRUMENT_NAME>"
    INSTRUMENT_TYPE                     =   "<INSTRUMENT_TYPE>"
    INSTRUMENT_MODE_ID                  =   <INSTRUMENT_MODE_ID>
    INSTRUMENT_MODE_DESC                =   "<INSTRUMENT_MODE_DESC>"

    TARGET_NAME                         = "<TARGET_NAME>"
    TARGET_TYPE                         = "<TARGET_TYPE>"

    START_TIME                          =   <START_TIME>
    STOP_TIME                           =   <STOP_TIME>
    SPACECRAFT_CLOCK_START_COUNT        =   "<START_COUNT>"
    SPACECRAFT_CLOCK_STOP_COUNT         =   "<STOP_COUNT>"
    NATIVE_START_TIME                   =   <NATIVE_START_TIME>
    NATIVE_STOP_TIME                    =   <NATIVE_STOP_TIME>

    PRODUCER_ID                         = "<PRODUCER_ID>"
    PRODUCER_FULL_NAME                  = "<PRODUCER_FULL_NAME>"
    PRODUCER_INSTITUTION_NAME           = "<PRODUCER_INSTITUTION_NAME>"

    DATA_QUALITY_ID                     = <DATA_QUALITY_ID>
    DATA_QUALITY_DESC                   = "<DATA_QUALITY_DESC>"

    /* GEOMETRY INFORMATION */

    SC_SUN_POSITION_VECTOR              =   <SC_SUN_POSITION_VECTOR>
    SC_TARGET_POSITION_VECTOR           =   <SC_TARGET_POSITION_VECTOR>
    SC_TARGET_VELOCITY_VECTOR           =   <SC_TARGET_VELOCITY_VECTOR>
    SPACECRAFT_ALTITUDE                 =   <SPACECRAFT_ALTITUDE>
                                                          Document No.     :   MID-IWF-TN-0087
                ROSETTA-MIDAS to PSA                      Issue/Rev. No.   :   1.4
                Interface Control Document                Date             :   1 April 2016
                                                          Page             :   108

SUB_SPACECRAFT_LATITUDE             = <SUB_SPACECRAFT_LATITUDE>
SUB_SPACECRAFT_LONGITUDE            = <SUB_SPACECRAFT_LONGITUDE>

/* DATA FILE POINTER(S) */

^EVENT_TABLE                            = "<FILE_NAME>"

/* DATA OBJECT DEFINITION(S) */

OBJECT                              =   EVENT_TABLE
    INTERCHANGE_FORMAT              =   ASCII
    ROWS                            =   <FILE_RECORDS>
    COLUMNS                         =   5
    ROW_BYTES                       =   80
    DESCRIPTION                     =   "MIDAS event data"
    ^STRUCTURE                      =   "EVN_STRUCTURE.FMT"
END_OBJECT                          =   EVENT_TABLE

END


The event data file structure is defined as follows:



      /* EVENT DATA STRUCTURE */

      OBJECT                        =   COLUMN
          NAME                      =   EVENT_OBT
          DATA_TYPE                 =   ASCII_REAL
          START_BYTE                =   1
          BYTES                     =   14
          UNIT                      =   SECOND
          DESCRIPTION               =   "S/C clock count at event generation."
      END_OBJECT                    =   COLUMN

      OBJECT                        =   COLUMN
          NAME                      =   EVENT_UTC
          DATA_TYPE                 =   DATE
          START_BYTE                =   16
          BYTES                     =   23
          DESCRIPTION               =   "Event generation time in UTC format."
      END_OBJECT                    =   COLUMN

      OBJECT                        =   COLUMN
          NAME                      =   EVENT_CNT
          DATA_TYPE                 =   ASCII_INTEGER
          START_BYTE                =   40
          BYTES                     =   5
          DESCRIPTION               =   "On-board event counter."
      END_OBJECT                    =   COLUMN

      OBJECT                        =   COLUMN
          NAME                      =   EVENT_SID
          DATA_TYPE                 =   ASCII_INTEGER
          START_BYTE                =   46
          BYTES                     =   5
          DESCRIPTION               =   "Event identifier."
      END_OBJECT                    =   COLUMN

      OBJECT                        =   COLUMN
          NAME                      =   EVENT_NAME
          DATA_TYPE                 =   CHARACTER
          START_BYTE                =   53
          BYTES                     =   25
          DESCRIPTION               =   "Event description."
      END_OBJECT                    =   COLUMN
                                                                  Document No.     :   MID-IWF-TN-0087
                     ROSETTA-MIDAS to PSA                         Issue/Rev. No.   :   1.4
                     Interface Control Document                   Date             :   1 April 2016
                                                                  Page             :   109


4.3.10 Data Product Design - Cantilever Utilisation History Data

     The MIDAS cantilever history data files are ASCII tables containing the list of events for a certain
     cantilever within a given time period. Each data file has associated a detached PDS label with
     the same name as the data file it describes, but with the extension .LBL. The data file columns
     are defined in a separate format file referred to by the ^STRUCTURE keyword in the PDS labels:
         *   Data directory:     /DATA
         *   File naming:        CAH_yydddhh_yydddhh_tt.TAB
         *   File structure:     /LABEL/CAH_STRUCTURE.FMT


     A typical PDS label for a cantilever history data file is given below:


     PDS_VERSION_ID                       = PDS3
     LABEL_REVISION_NOTE                  = "<LABEL_REVISION_NOTE>"

     RECORD_TYPE                          = FIXED_LENGTH
     RECORD_BYTES                         = 119
     FILE_RECORDS                         = <FILE_RECORDS>

     DATA_SET_ID                          = "<DATA_SET_ID>"
     DATA_SET_NAME                        = "<DATA_SET_NAME>"

     PRODUCT_ID                           =   "<PRODUCT_ID>"
     PRODUCT_VERSION_ID                   =   "<PRODUCT_VERSION_ID>"
     PRODUCT_CREATION_TIME                =   <PRODUCT_CREATION_TIME>
     PRODUCT_TYPE                         =   EDR
     PROCESSING_LEVEL_ID                  =   <PROCESSING_LEVEL_ID>

     MISSION_ID                           = ROSETTA
     MISSION_NAME                         = "INTERNATIONAL ROSETTA MISSION"
     MISSION_PHASE_NAME                   = "<MISSION_PHASE_NAME>"

     INSTRUMENT_HOST_ID                   =   <INSTRUMENT_HOST_ID>
     INSTRUMENT_HOST_NAME                 =   "<INSTRUMENT_HOST_NAME>"
     INSTRUMENT_ID                        =   <INSTRUMENT_ID>
     INSTRUMENT_NAME                      =   "<INSTRUMENT_NAME>"
     INSTRUMENT_TYPE                      =   "<INSTRUMENT_TYPE>"
     INSTRUMENT_MODE_ID                   =   <INSTRUMENT_MODE_ID>
     INSTRUMENT_MODE_DESC                 =   "<INSTRUMENT_MODE_DESC>"

     TARGET_NAME                          = "<TARGET_NAME>"
     TARGET_TYPE                          = "<TARGET_TYPE>"

     START_TIME                           =   <START_TIME>
     STOP_TIME                            =   <STOP_TIME>
     SPACECRAFT_CLOCK_START_COUNT         =   "<START_COUNT>"
     SPACECRAFT_CLOCK_STOP_COUNT          =   "<STOP_COUNT>"
     NATIVE_START_TIME                    =   <NATIVE_START_TIME>
     NATIVE_STOP_TIME                     =   <NATIVE_STOP_TIME>

     PRODUCER_ID                          = "<PRODUCER_ID>"
     PRODUCER_FULL_NAME                   = "<PRODUCER_FULL_NAME>"
     PRODUCER_INSTITUTION_NAME            = "<PRODUCER_INSTITUTION_NAME>"

     DATA_QUALITY_ID                      = <DATA_QUALITY_ID>
     DATA_QUALITY_DESC                    = "<DATA_QUALITY_DESC>"

     /* DATA FILE POINTER(S) */

     ^EVENT_TABLE                         = "<FILE_NAME>"

     /* DATA OBJECT DEFINITION(S) */
                                                               Document No.     :   MID-IWF-TN-0087
                   ROSETTA-MIDAS to PSA                        Issue/Rev. No.   :   1.4
                   Interface Control Document                  Date             :   1 April 2016
                                                               Page             :   110

OBJECT                              =   EVENT_TABLE
    NAME                            =   CANTILEVER_HISTORY
    INTERCHANGE_FORMAT              =   ASCII
    ROWS                            =   <FILE_RECORDS>
    COLUMNS                         =   11
    ROW_BYTES                       =   119
    DESCRIPTION                     =   "MIDAS cantilever history data"
    ^STRUCTURE                      =   "CAH_STRUCTURE.FMT"
END_OBJECT                          =   EVENT_TABLE

END


The cantilever history data structure is defined as follows:



      /* CANTILEVER HISTORY DATA STRUCTURE */

      OBJECT                        =   COLUMN
          NAME                      =   START_OBT
          DATA_TYPE                 =   ASCII_REAL
          START_BYTE                =   1
          BYTES                     =   15
          UNIT                      =   SECOND
          DESCRIPTION               =   "S/C clock count at event start."
      END_OBJECT                    =   COLUMN

      OBJECT                        =   COLUMN
          NAME                      =   START_UTC
          DATA_TYPE                 =   DATE
          START_BYTE                =   17
          BYTES                     =   23
          DESCRIPTION               =   "Event start time in UTC format."
      END_OBJECT                    =   COLUMN

      OBJECT                        =   COLUMN
          NAME                      =   STOP_OBT
          DATA_TYPE                 =   ASCII_REAL
          START_BYTE                =   41
          BYTES                     =   15
          UNIT                      =   SECOND
          DESCRIPTION               =   "S/C clock count at event stop."
      END_OBJECT                    =   COLUMN

      OBJECT                        =   COLUMN
          NAME                      =   STOP_UTC
          DATA_TYPE                 =   DATE
          START_BYTE                =   57
          BYTES                     =   23
          DESCRIPTION               =   "Event stop time in UTC format."
      END_OBJECT                    =   COLUMN

      OBJECT                        =   COLUMN
          NAME                      =   EVENT
          DATA_TYPE                 =   CHARACTER
          START_BYTE                =   82
          BYTES                     =   8
          DESCRIPTION               =   "Textual description of the event."
      END_OBJECT                    =   COLUMN

      OBJECT                        = COLUMN
          NAME                      = AC_GAIN
          DATA_TYPE                 = ASCII_INTEGER
          START_BYTE                = 93
          BYTES                     = 1
          DESCRIPTION               = "Gain level of cantilever AC signal
                                        amplifier [0-7]."
      END_OBJECT                    = COLUMN

      OBJECT                        =   COLUMN
          NAME                      =   DC_GAIN
          DATA_TYPE                 =   ASCII_INTEGER
          START_BYTE                =   95
                                                   Document No.      :   MID-IWF-TN-0087
             ROSETTA-MIDAS to PSA                  Issue/Rev. No.    :   1.4
             Interface Control Document            Date              :   1 April 2016
                                                   Page              :   111

   BYTES                      =1
   DESCRIPTION                = "Gain level of cantilever DC signal
                                 amplifier [0-7]."
END_OBJECT                    = COLUMN

OBJECT                        = COLUMN
    NAME                      = EXC_LVL
    DATA_TYPE                 = ASCII_INTEGER
    START_BYTE                = 97
    BYTES                     = 1
    DESCRIPTION               = "Gain level of piezo-electric actuator
                                  used for cantilever excitation [0-7]."
END_OBJECT                    = COLUMN

OBJECT                        = COLUMN
    NAME                      = U_MAX
    DATA_TYPE                 = ASCII_REAL
    UNIT                      = VOLT
    START_BYTE                = 99
    BYTES                     = 5
    DESCRIPTION               = "Max. cantilever signal amplitude
                                  detected during frequency scan."
END_OBJECT                    = COLUMN

OBJECT                        = COLUMN
    NAME                      = F_MAX
    DATA_TYPE                 = ASCII_REAL
    UNIT                      = HERTZ
    START_BYTE                = 105
    BYTES                     = 8
    DESCRIPTION               = "Frequency where the maximum
                                  signal amplitude was detected."
END_OBJECT                    = COLUMN

OBJECT                        = COLUMN
    NAME                      = SCAN_MODE
    DATA_TYPE                 = CHARACTER
    START_BYTE                = 115
    BYTES                     = 3
    DESCRIPTION               = "Scanning mode for image acquisition e.g.
                                  DYN[amic], CON[tact] or MAG[netic]."
END_OBJECT                    = COLUMN
                                                                  Document No.     :   MID-IWF-TN-0087
                     ROSETTA-MIDAS to PSA                         Issue/Rev. No.   :   1.4
                     Interface Control Document                   Date             :   1 April 2016
                                                                  Page             :   112


4.3.11 Data Product Design - Target Utilisation History Data

     The MIDAS target history data files are ASCII tables containing the list of events for a certain
     target within a given time period. Each data file has associated a detached PDS label with the
     same name as the data file it describes, but with the extension .LBL. The data file columns are
     defined in a separate format file referred to by the ^STRUCTURE keyword in the PDS labels:
         *   Data directory:     /DATA
         *   File naming:        TGH_yydddhh_yydddhh_tt.TAB
         *   File structure:     /LABEL/TGH_STRUCTURE.FMT


     A typical PDS label for a target history data file is given below:


     PDS_VERSION_ID                       = PDS3
     LABEL_REVISION_NOTE                  = "<LABEL_REVISION_NOTE>"

     RECORD_TYPE                          = FIXED_LENGTH
     RECORD_BYTES                         = 95
     FILE_RECORDS                         = <FILE_RECORDS>

     DATA_SET_ID                          = "<DATA_SET_ID>"
     DATA_SET_NAME                        = "<DATA_SET_NAME>"

     PRODUCT_ID                           =   "<PRODUCT_ID>"
     PRODUCT_VERSION_ID                   =   "<PRODUCT_VERSION_ID>"
     PRODUCT_CREATION_TIME                =   <PRODUCT_CREATION_TIME>
     PRODUCT_TYPE                         =   EDR
     PROCESSING_LEVEL_ID                  =   <PROCESSING_LEVEL_ID>

     MISSION_ID                           = ROSETTA
     MISSION_NAME                         = "INTERNATIONAL ROSETTA MISSION"
     MISSION_PHASE_NAME                   = "<MISSION_PHASE_NAME>"

     INSTRUMENT_HOST_ID                   =   <INSTRUMENT_HOST_ID>
     INSTRUMENT_HOST_NAME                 =   "<INSTRUMENT_HOST_NAME>"
     INSTRUMENT_ID                        =   <INSTRUMENT_ID>
     INSTRUMENT_NAME                      =   "<INSTRUMENT_NAME>"
     INSTRUMENT_TYPE                      =   "<INSTRUMENT_TYPE>"
     INSTRUMENT_MODE_ID                   =   <INSTRUMENT_MODE_ID>
     INSTRUMENT_MODE_DESC                 =   "<INSTRUMENT_MODE_DESC>"

     TARGET_NAME                          = "<TARGET_NAME>"
     TARGET_TYPE                          = "<TARGET_TYPE>"

     START_TIME                           =   <START_TIME>
     STOP_TIME                            =   <STOP_TIME>
     SPACECRAFT_CLOCK_START_COUNT         =   "<START_COUNT>"
     SPACECRAFT_CLOCK_STOP_COUNT          =   "<STOP_COUNT>"
     NATIVE_START_TIME                    =   <NATIVE_START_TIME>
     NATIVE_STOP_TIME                     =   <NATIVE_STOP_TIME>

     PRODUCER_ID                          = "<PRODUCER_ID>"
     PRODUCER_FULL_NAME                   = "<PRODUCER_FULL_NAME>"
     PRODUCER_INSTITUTION_NAME            = "<PRODUCER_INSTITUTION_NAME>"

     DATA_QUALITY_ID                      = <DATA_QUALITY_ID>
     DATA_QUALITY_DESC                    = "<DATA_QUALITY_DESC>"

     /* DATA FILE POINTER(S) */

     ^EVENT_TABLE                         = "<FILE_NAME>"

     /* DATA OBJECT DEFINITION(S) */
                                                           Document No.     :   MID-IWF-TN-0087
                ROSETTA-MIDAS to PSA                       Issue/Rev. No.   :   1.4
                Interface Control Document                 Date             :   1 April 2016
                                                           Page             :   113

OBJECT                              =   EVENT_TABLE
    NAME                            =   TARGET_HISTORY
    INTERCHANGE_FORMAT              =   ASCII
    ROWS                            =   <FILE_RECORDS>
    COLUMNS                         =   6
    ROW_BYTES                       =   95
    DESCRIPTION                     =   "MIDAS target history data"
    ^STRUCTURE                      =   "TGH_STRUCTURE.FMT"
END_OBJECT                          =   EVENT_TABLE

END


The target history data structure is defined as follows:


      /* TARGET HISTORY DATA STRUCTURE */

      OBJECT                        =   COLUMN
          NAME                      =   START_OBT
          DATA_TYPE                 =   ASCII_REAL
          START_BYTE                =   1
          BYTES                     =   15
          UNIT                      =   SECOND
          DESCRIPTION               =   "S/C clock count at event start."
      END_OBJECT                    =   COLUMN

      OBJECT                        =   COLUMN
          NAME                      =   START_UTC
          DATA_TYPE                 =   DATE
          START_BYTE                =   17
          BYTES                     =   23
          DESCRIPTION               =   "Event start time in UTC format."
      END_OBJECT                    =   COLUMN

      OBJECT                        =   COLUMN
          NAME                      =   STOP_OBT
          DATA_TYPE                 =   ASCII_REAL
          START_BYTE                =   41
          BYTES                     =   15
          UNIT                      =   SECOND
          DESCRIPTION               =   "S/C clock count at event stop."
      END_OBJECT                    =   COLUMN

      OBJECT                        =   COLUMN
          NAME                      =   STOP_UTC
          DATA_TYPE                 =   DATE
          START_BYTE                =   57
          BYTES                     =   23
          DESCRIPTION               =   "Event stop time in UTC format."
      END_OBJECT                    =   COLUMN

      OBJECT                        =   COLUMN
          NAME                      =   EVENT
          DATA_TYPE                 =   CHARACTER
          START_BYTE                =   82
          BYTES                     =   8
          DESCRIPTION               =   "Textual description of the event."
      END_OBJECT                    =   COLUMN

      OBJECT                        =   COLUMN
          NAME                      =   FLUX_OR_TIP
          DATA_TYPE                 =   ASCII_INTEGER
          START_BYTE                =   92
          BYTES                     =   2
          DESCRIPTION               =   "Maximum dust flux or tip number."
      END_OBJECT                    =   COLUMN
                                                               Document No.       :   MID-IWF-TN-0087
                    ROSETTA-MIDAS to PSA                       Issue/Rev. No.     :   1.4
                    Interface Control Document                 Date               :   1 April 2016
                                                               Page               :   114



5 Appendix: Available Software to read PDS files

    The MIDAS archive data sets can be displayed and validated with the MIDAS Data Set Browser
    software. The contents of a MIDAS archive data set can be browsed by means of a tree-like
    structure, displaying the data set directory hierarchy (nodes) an the associated data files (leafs).
    The software is entirely written in IDL and the source code is included in the data sets.


    Figure 5.1 shows a frequency scan from the RO-X-MIDAS-3-MARS-PC3-5 data set:




    The browser window is structured into two panels holding the following components (from top to
    bottom):
    Left Panel:       - Data set hierarchy window - used for navigation
                      - Data file attribute window - shows data file attributes (e.g. row prefix values)
                      - Plot parameter selection window - plot parameter selection
    Right Panel:      - Data file path windows - displays the full path of the selected PDS file
                      - Text window - displays text files or PDS data file labels
                      - Graphic/Table window - used for data plotting or tabular data display
                                                                Document No.      :   MID-IWF-TN-0087
                     ROSETTA-MIDAS to PSA                       Issue/Rev. No.    :   1.4
                     Interface Control Document                 Date              :   1 April 2016
                                                                Page              :   115




5.1   Program Description

5.1.1 Program Installation

      Before starting the program, the source files need to be copied to a directory on a machine
      having IDL (6.4 or higher) installed. The source files (extension *.PRO) are located in the
      DOCUMENT directory of a data set. In order to make IDL aware of the new modules, the
      directory holding the source files should be added to the IDL path preferences (File-
      >Preferences->Path).


5.1.2 Starting the Program

      After starting up IDL, the MIDAS Data Set Browser can be started with the following command:
      IDL> mid_browse [,_data_set_root]
      The parameter data_set_root is optional. It can be used to define the root directory of the MIDAS
      data set (usually the directory holding the AAREADME.TXT and VOLDESC.CAT files) at start-
      up. If this parameter is not present, the S/W displays a file selection dialog from where the root
      directory can be selected.


5.1.3 Navigating the Data Set

      The upper left window shows a tree-like structure displaying the data set hierarchy (directories
      and files).
      Directories can be expanded/collapsed by clicking on the `+'/'-` symbol in front of the directory
      icon. Double-clicking on the directory icon or the directory name toggles between expanded and
      collapsed mode.
      The up and down arrow keys can be used to navigate sequentially through the directories and
      files.
      Data set files are usually displayed with the file extension included. Nevertheless, in order to
      reduce the amount of displayed files, the file extension is stripped of from files located in the
      DATA directory and all subjacent directories. This results in a common filename (without
      extension) for the data files and the respective PDS labels.


5.1.4 Data Display

      Information from a data set file can be retrieved by selecting the file in the data set hierarchy
      window (entry is highlighted).
      Text files:
      Data set files having the extension .CAT, .FMT, .LBL, .TAB and .TXT are displayed in the upper
      right text display window. No data validation is applied to these files.
      Adobe PDF files:
      When selecting a Portable Data Format file, the file is displayed in the application associated to
      the .PDF file extension on the system (if any).
                                                                   Document No.     :   MID-IWF-TN-0087
                      ROSETTA-MIDAS to PSA                         Issue/Rev. No.   :   1.4
                      Interface Control Document                   Date             :   1 April 2016
                                                                   Page             :   116

      PNG Images:
      Images stored in PNG format are displayed in the graphic panel located in the lower right corner
      of the main window.
      Files in the DATA directory:
      Files located in and underneath the DATA directory are treated differently than the data set files
      already mentioned.
      PDS labels are validated and ^STRUCTURE statements are expanded. The resulting PDS
      labels are displayed in the text window. Comments are removed from the PDS labels.
      The associated data files are loaded and the information is displayed in several windows,
      depending on the data product type:
          *   EVN, CAH and TGH Data: The table contents are displayed in the table data panel
              located in the lower left corner of the main window.
          *   FSC Data: The resonance curve of one scan cycle of the frequency sweep is displayed
              in the graphic panel. The red square indicates the resonance peak which has been
              found by the on-board S/W within the current scan cycle. General frequency scan cycle
              attributes (row prefix) are displayed in the data file attribute panel. If more than one
              frequency sweep record is stored in the selected data file, the plot parameter drop-list
              can be used to navigate through the records.
          *   HK1, HK2 Data: Housekeeping data parameters are plotted in the graphic panel. The
              parameters can be selected from the plot parameter drop-list. Due to the rather poor
              performance of the 3rd party S/W for reading and validating the PDS labels, loading of
              the extended housekeeping data (HK2) might take some time.
          *   IMG Data: Images are displayed in the graphic panel.
          *   LIN Data: Line scans are displayed in the graphic panel. General line scan attributes
              (row prefix) are displayed in the data file attribute panel. If more than one line scan
              record is stored in the selected data file, the plot parameter drop-list can be used to
              navigate through the records.
          *   SPA, SPS Data: Single point scans are displayed in the graphic panel. General single
              point scan attributes (row prefix) are displayed in the data file attribute panel. If more
              than one single point scan record is stored in the selected data file, the plot parameter
              drop-list can be used to navigate through the records.



5.2   Program Source Files

5.2.1 MIDAS Data Set Browser

      The MIDAS Data Set Browser comprises the following IDL source modules:
          *   error_msg - utility for printing error messages
          *   escape.pro - utility for handling escape sequences in strings
          *   ini_file.pro - utility for saving and restoring program settings
          *   mid_browse.pro - the MIDAS Data Set Browser main program
          *   release.pro - MIDAS Data Set Browser software revision
          *   tostr.pro - extended string conversion (e.g. date values)
                                                                Document No.       :   MID-IWF-TN-0087
                    ROSETTA-MIDAS to PSA                        Issue/Rev. No.     :   1.4
                    Interface Control Document                  Date               :   1 April 2016
                                                                Page               :   117

5.2.2 Small Bodies Node (SBN) PDS Library

    The READPDS library was created at the Small Bodies Node (SBN) of the Planetary Data
    System (PDS) to read PDS image and data files. The release provided in the archive is version
    4.9 dating from 2016-03-02.


    The library consists of the following modules:
          * addeobj.pro - insert END_OBJECT keyword if not present and pad lines to 80 bytes
          * apply_bitmask.pro - applies bitmask on integer arrays or scalars
          * arr_struct.pro - populates an IDL structure for array object to be read
          * arrcol_struct.pro - construct an IDL structure for a given array or collection
          * arrcolascpds.pro - read a PDS ASCII array or collection object into an IDL structure
          * arrcolpds.pro - read a PDS binary array or collection object into an IDL structure
          * btabvect2.pro - convert NxM dimensional column vector into IDL data type
          * clean.pro - remove all unprintable characters from a string
          * cleanarr.pro - remove all unprintable characters from a string array
          * coll_struct.pro - populates an IDL structure for collection object to be read
          * elem_struct.pro - populates an IDL structure for element object to be read
          * get_index.pro - retrieves viable END_OBJECT index position in a PDS label
          * headpds.pro - read a PDS label into an array variable
          * histogram.pro - read and display PDs histogram objects
          * imagepds.pro - read an image array into an array variable
          * objpds.pro - obtain viable data objects from a PDS label
          * pdspar.pro - obtain the value of a parameter in a PDS header
          * pointpds.pro - retrieves pointer information for PDS object from label
          * qubepds.pro - read a 3D image qube object into a 3D IDL array
          * readhistory.pro - read a history object into a string array variable
          * readpds.pro - reads a PDS file into IDL data and label variables
          * readspreadsheet.pro - read a PDS spreadsheet object into an IDL structure
          * remove_chars.pro - remove all specified characters from a string
          * str2num.pro - returns numeric value of a string
          * tascpds.pro - read a PDS ASCII table into an IDL structure
          * tbinpds.pro - read a PDS binary table file into an IDL structure
          * timepds.pro - extract time from PDS label or ASCII table
                                                       Document No.      :   MID-IWF-TN-0087
                  ROSETTA-MIDAS to PSA                 Issue/Rev. No.    :   1.4
                  Interface Control Document           Date              :   1 April 2016
                                                       Page              :   118



6 Appendix: Example of Directory Listing of Data Set X

    [TOP-LEVEL-DIRECTORY]
    |
    |-- .PDSVOLUME.XML      Archive data file catalog generated by PVV.
    |-- AAREADME.TXT        Overview description of the data set contents.
    |-- VOLDESC.CAT         Description of the contents of this volume.
    |
    |--[CALIB]              Directory containing PDS calibration objects.
    ||
    | |-- CALINFO.TXT       Description of files in the CALIB directory.
    | |-- MIDCALIB.LBL      PDS label describing the MIDAS calibration table.
    | +-- MIDCALIB.TAB      Standard MIDAS calibration table in ASCII format.
    |
    |--[CATALOG]            Directory containing PDS catalog objects.
    ||
    | |-- CATINFO.TXT       Description of files in the CATALOG directory.
    | |-- DATASET.CAT       Description of the MIDAS data set.
    | |-- INST.CAT          Description of the MIDAS instrument.
    | |-- INSTHOST.CAT      Description of the ROSETTA spacecraft.
    | |-- MISSION.CAT       Description of the ROSETTA mission.
    | |-- REFERENCE.CAT     List of publications mentioned in catalog files.
    | |-- SOFTWARE.CAT      Description of provided S/W to read the data set.
    | +-- TARGET.CAT        Description of the ROSETTA mission targets.
    |
    |--[DATA]               Directory containing the MIDAS data files.
    ||
    | |--[EVN]              Directory containing MIDAS event data.
    |||
    | | |-- *.LBL           Detached label files describing the data.
    | | +-- *.TAB           MIDAS event data files in ASCII format.
    ||
    | |--[FSC]              Directory containing MIDAS frequency scan data.
    |||
    | | |-- *.LBL           Detached label files describing the data.
    | | +-- *.TAB           MIDAS frequency scan data files in binary format.
    ||
    | |--[HK1]              Directory containing MIDAS standard HK data.
    |||
    | | |-- *.LBL           Detached label files describing the data.
    | | +-- *.TAB           MIDAS standard HK data files in binary format.
    ||
    | |--[HK2]              Directory containing MIDAS extended HK data.
    |||
    | | |-- *.LBL           Detached label files describing the data.
    | | +-- *.TAB           MIDAS extended HK data files in binary format.
    ||
    | |--[IMG]              Directory containing MIDAS image data.
    |||
    | | |-- *.LBL           Detached label files describing the data.
    | | +-- *.BCR           MIDAS image data files in STM-BCR format.
    ||
    | |--[LIN]              Directory containing MIDAS line scan data.
    |||
    | | |-- *.LBL           Detached label files describing the data.
    | | +-- *.TAB           MIDAS line scan data files in binary format.
    ||
    | |--[ROI]              Directory containing MIDAS feature vector data.
    |||
    | | |-- *.LBL           Detached label files describing the data.
    | | +-- *.TAB           MIDAS feature vector data files in binary format.
    ||
    | |--[SPA]              Directory containing MIDAS DAQ approach data.
    |||
    | | |-- *.LBL           Detached label files describing the data.
    | | +-- *.TAB           MIDAS DAQ approach data files in binary format.
    ||
    | |--[SPS]              Directory containing MIDAS DAQ sampling data.
    |||
    | | |-- *.LBL           Detached label files describing the data.
    | | +-- *.TAB           MIDAS DAQ sampling data files in binary format.
                                                    Document No.     :   MID-IWF-TN-0087
             ROSETTA-MIDAS to PSA                   Issue/Rev. No.   :   1.4
             Interface Control Document             Date             :   1 April 2016
                                                    Page             :   119

||
| |-- CAH*.TAB           MIDAS cantilever history files in ASCII format.
| |-- TGH*.TAB           MIDAS target history files in ASCII format.
| +-- *.LBL              Detached label files describing the data.
|
|--[DOCUMENT]            Directory containing volume related documents.
||
| |--[CODE]              Directory containing data browser S/W modules.
|||
| | |-- MID_BROWSE.LBL   PDS label describing the software modules.
| | |-- MID_BROWSE.PRO   MIDAS data browser main program (IDL).
| | +-- *.PRO            MIDAS data browser S/W source modules (IDL).
||
| |-- DOCINFO.TXT        Description of files in the DOCUMENT directory.
| |-- MID_*.LBL          PDS labels for documents.
| |-- MID_EICD.TXT       MIDAS to PSA interface document in ASCII format.
| |-- MID_EICD.PDF       MIDAS to PSA interface document in PDF format.
| |-- MID_EICD_*.PNG     MIDAS to PSA I/F document images in PDS format.
| |-- MID_SSRV.TXT       MIDAS instrument paper in ASCII format.
| |-- MID_SSRV.PDF       MIDAS instrument paper in Adobe PDF format.
| |-- MID_SSRV_*.PNG     MIDAS instrument paper images in PNG format.
| |-- MID_USER.TXT       MIDAS user manual in ASCII format.
| |-- MID_USER.PDF       MIDAS user manual in Adobe PDF format.
| +-- MID_USER_*.PNG     MIDAS user manual images in PNG format.
|
+--[INDEX]               Directory containing index files.
   |
   |-- INDXINFO.TXT      Description of files in the INDEX directory.
   |-- INDEX.TAB         Index table of MIDAS data in this data set.
   +-- INDEX.LBL         PDS label for INDEX.TAB file.