CRaTER EGSE Software

CRaTER GSE Software

Basic Programs

CArchive
Acquires (full) data stream and writes an LRO-standard archive file
CCmd
Opens an instrument command window
CComment Reads ASCII text in from STDIN or UDP socket and generates CRaTER-std telemetry packets
CData
Acquires a data stream and pipes same to STDOUT in ASCII-taged format
CHouse
Opens an instrument analog housekeeping window
CStatistics Calculates means, maxima, minima, and rms noise values on primary science data
CPlot
Plot engineering values as a function of time
CPrint Prints a single page of data
CQuery
Displays current data flow connections to the EGSE
CReview
Opens a set of windows to review archived data
CWeb
Generates web pages displaying Housekeeping and Secondary Science data
SData
Retrieve data from the SOC Level 2 Archive
SPlot
Plot engineering values as function of time from data generated by SData
Verify
General script for exhaustive verification of SSR files
bcmd
Takes ASCII commands from STDIN and generates CCSDS command packets on socket
browse
Opens a set of data files for browsing
calcurve
Converts housekeeping values in rtlm -a format to engineering units
command.tcl
Instument command window
house.tcl
Displays analog housekeeping
rtlm
Receives CCSDS telemetry packets on socket and decodes them into ASCII on STDOUT


 

Functional Test Support -- these require X-Windows support

ar_cobalt
A wrapper to analyze an archived Co-60 test  (SSR data)
ar_coinc
Check the resulets of an archived  coincidence mask test  (SSR data)
ar_limits
Check the red/yellow limits of an archived data set  (SSR data)
ar_singles
Check the singles rates from an archived data set  (SSR data)
ar_zero
A wrapper to analyze an archived zero offset test from SSR data
emi_noise
A small filter to screen internal cal signals for excess rms noise
lf_cobalt A wrapper to run a Co-60 test and plot the results -- part of Long Form Functional
lf_ecal Gathers data from internal calibration source sweep -- part of Long Form Functional
lf_mask

Tests coincidence mask and detector processing select matrix -- part of Long Form Functional

lf_zero Calculates zero offset of each detector processing chain -- part of Long Form Functional
sf_facility A wrapper to display facility data logger output -- invokes CComment | rtlm
sf_log A wrapper to run a data archive process -- invokes CArchive -- part of Short Form Functional
sf_noise A wrapper to display primary science statistics -- invokes CStatistics -- part of Short Form Functional

 

Utility Programs

house-packet
primary-packet
ss-packet
Three names for the same program; using STDIN generate pseudo-telemetry packets for testing purposes
c_graph Graphs data from the c_hist program
c_grep Extracts event data matching coincidence mask and amplitude discriminator settings
c_hist Generates six histograms of event data, one per detector
c_monitor
Generates an HTML page based on rtlm|calcurve data
c_plot
Plots mnemonic value versus time
c_zip Concatenates and compresses multiple archive files
craterCheck
A specialized packet checking program for validating data from the instrument in test mode
facility Takes input tag,value pairs and reformats
find_omnibox Searches the local network for the OmniBusBox (aka EGSE) and reports the IP address of same
Limits
A simple HTML file with red/yellow limits for housekeeping parameters
o_acquire
Collects engineering data from a pdist pipe into the RRD data files
o_display
Generate plots of data contained in the RRD data files
o_setup
Setup an set of RRD data files for tracking engineering data
pdist
Takes CCSDS packet stream on single input socket and distributes to multiple hosts, filtering by Application ID.  Use "tincan" to set it up
rtlm-x
A fast version of rtlm for doing a hex dump of the data packets
statistics
Receives primary science telemetry packets on socket and generate noise statistics
tincan
Talks to pdist to retrieve a packet stream containing selected App Ids.
tsv
Generate list of tab-separated-values from rtlm output
verify
A general purpose CCSDS packet verification and consistency checker

 

Incantations

For the following examples, we assume the programs have been downloaded to a single, common directory.  We require Perl 5 and Tcl/Tk 8 to execute these scripts.  The C* commands handle all the details of connecting to the EGSE, setting up the pipelines, etc.  In the Windows world one has to start with tincan to allocate a data stream for each application and move on from there.

Solaris
Mac OS X
CCmd &
CHouse &
Windows
Commands:
rtlm.pl -p 12410 -a -c -t | calcurve.pl | wish command.tcl -- -s | bcmd.pl -m egse_machine_name
Housekeeping:
rtlm.pl -p 12402 -a -t | calcurve.pl | wish house.tcl



Executable Programs -- all in Perl except those with .c or .tcl suffix

Accessibility