Help for PLUMAGE

PURPOSE:
PLUMAGE reads a set of inputs and creates an XML suitable for upload
(ingestion) into PLACES to update the "telemetry" view.  It is intended to
be run from a pipeline.  The XML is specific to telemetry upload and
cannot be used to do user updates of PLACES.

This program does not submit the XML to PLACES; use "curl" or other tool
to do that.  It only generates the XML file.

The input can be a single image, a set of images, or a list file containing
image filenames.

Only the following labels are examined:
   IDENTIFICATION.ROVER_MOTION_COUNTER
   IDENTIFICATION.SPACECRAFT_CLOCK_START_COUNT
   IDENTIFICATION.PRODUCT_ID
   ROVER_COORDINATE_SYSTEM.ORIGIN_OFFSET_VECTOR
   ROVER_COORDINATE_SYSTEM.ORIGIN_ROTATION_QUATERNION
   SITE_COORDINATE_SYSTEM.ORIGIN_OFFSET_VECTOR
   SITE_COORDINATE_SYSTEM.ORIGIN_ROTATION_QUATERNION
   RSM_ARTICULATION_STATE.ARTICULATION_DEVICE_ANGLE (MSL)
   PMA_ARTICULATION_STATE.ARTICULATION_DEVICE_ANGLE (MER)
   ARM_ARTICULATION_STATE.ARTICULATION_DEVICE_ANGLE (MSL)
   IDD_ARTICULATION_STATE.ARTICULATION_DEVICE_ANGLE (MER)
   CHASSIS_ARTICULATION_STATE.ARTICULATION_DEVICE_ANGLE
   HGA_ARTICULATION_STATE.ARTICULATION_DEVICE_ANGLE

By default PLUMAGE will also gather Sites seen in SITE_COORDINATE_SYSTEM
labels.  This can be disabled via -NO_SITE.  Sites are output only once;
if a duplicate site is seen then the duplicates are quietly ignored.  Note
that the actual offset values are NOT compared for consistency.

If the -DO_MSL_INIT flag is set, then the program will first look at the
INITIAL_STATE_PARMS group for the ROVER_MOTION_COUNTER and Rover position
and orientation.  If not found, it will revert to the standard labels.  This
allows PLUMAGE to find the "initial" state before visodom is run for those
kind of images.  The flag only applies to MSL images, but it is "safe"
for all MSL images.  It is ignored for other missions.

It is assumed that the coordinate system groups define the proper CS's for
the image in question (i.e. the indices match the RMC).  This is NOT checked
because the condition should hold true for all EDR's, and this should really
only be run on EDR's.

An SCLK range can optionally be specified; any images outside that range will
be ignored.

PLUMAGE will also gather mechanism joint angles, and image observation times.
This can be turned off via -NO_MECHANISMS or -NO_OBSERVATION.

There are many parameters to control what strings go into the generated file.
They should generally not be used for the intended purpose of this program,
which is to populate the "telemetry" view (except possibly USER).  They are
simply provided for completeness.

The product ID is appended to the METHOD string by default, in order to provide
traceability to the product from which the values came.  This can be disabled
via -NO_PRODUCT_ID.

The entire <origination> tag is disabled by default; use -do_orig to turn it
on.  The <trace> tag is enabled by default; -no_trace turns it off.

The add_site parameter adds the given number to all Site indices.  The intent
is to be able to interact with the development PLACES server using "fresh"
Site territory (i.e. a range of sites not cluttered with previous data).
It should obviously never be used in operations.

EXECUTION:

plumage NLAxxx.IMG upload.xml -msl
curl ....


HISTORY:
2011-11-02 rgd Initial version by B. Deen
2011-12-05 rgd Updated to new telemSolution XML format
2012-02-03 rgd Added Site coordinate system
2012-03-16 rgd Added <trace> and add_site
2012-05-23 rgd Added <mechanism> support, removed Mission param (because
		needed support is now in the PigFileModel class)
2012-07-05 rgd Added <observation> support
2012-08-07 rgd Added do_msl_init support

COGNIZANT PROGRAMMER: B. Deen


PARAMETERS:


INP

Input images or list file.

OUT

Output XML file

USER

Override user name

METHOD

Override method string

INSTITUTION

Override institution string

PRODUCT_ID

Override product ID string

DO_TRACE

Enable or disable the trace tag

DO_ORIG

Enable or disable the origination tag

DO_PRODUCT_ID

Can be used to turn off appending the product_id to the method

DO_SITES

Can be used to turn off Site processing

DO_MECHANISMS

Can be used to turn off mechanism angle output

DO_OBSERVATION

Can be used to turn off observation output

DO_MSL_INIT

Turn on or off MSL mode

MIN_SCLK

Optional min sclk to process

MAX_SCLK

Optional max sclk to process

ADD_SITE

Number to add to site indices, for testing

See Examples:


Cognizant Programmer: