ongadata

Purpose:

Use the ONGA Data Transfer server program to transfer Online Natural Gas Analyzer (ONGA) data files from a networked PC.

Enter:

ongadata [spec_file=filename]

Where:

spec_file

Optional. Specify the spec filename to read and configure the task. The default is /specs/ongaSpecs.

Example:

ongadata
The above spawns ongadata using the default spec file ongaSpecs

ongadata spec_file=/specs/newOngaSpecs
The above spawns ongadata using the spec file /specs/newOngaSpecs

Example Specification File:

@VERSION
  3.0
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
# Data files to be sent to the Unix database will be placed in the 
# /data/onga/ready/SITE directory where ‘SITE’ is the site specified below.
# !! REQUIRED KEYWORD !!
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

@HOST_INFORMATION
  #Name         Site
  ctclfnode9    CTC

#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
# Data will be stored in the directory /data/onga_REGNAME where #’REGNAME’
# is the registered name specified below. If this keyword is # not used,
# the default registered name, OngaData, will be used.  The # name must
# be unique for any # given instance of ongadata.
# !! OPTIONAL KEYWORD !!
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@REGISTERED_TASK_NAME

  onga
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
# This is the stream ID description which will be included in the

# onga_onga event that is used to transmit the composition data to the
# test cell node(s).

# It is used to specify the composition variable that should be
# written to by the update_composition task running on the remote
# node.  This stream description can be overridden using the Cyflex
# variables specified under the @GAS_VARIABLES_LABELS keyword below.
# If the @GAS_STREAM_ID_DESCRIPTION keyword is not present, the stream
# ID description will be set to NATURAL_GAS.
# Only the time/date and unnormalized amount checks will be done if
# the gas stream ID is NOT NATURAL_GAS.
# NOTE: Valid entries, case insensitive, for stream ID descriptions
#       as defined in asset.h as of 12/1/2014 are:

# COMBUSTION AIR,      COMBUSTION_AIR_DP         NATURAL_GAS
# GAS1                 GAS2                      AIR_FUEL_MIX
# AIR_FUEL_MIX_DP      EXHAUST                   EXHAUST_DP
# STACK                STACK_DP                  EGR_MIX
# AFTER_TREATMENT1     AFTER_TREATMENT1_DP       AFTER_TREATMENT2
# EGR_MIX_DP           AFTER_TREATMENT2_DP       MINI_TUNNEL
# MINI_TUNNEL_DP       GASOLINE_VAPOR            GASOLINE
# DIESEL_FUEL          UREA
# !! OPTIONAL KEYWORD !!
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@GAS_STREAM_ID_DESCRIPTION

  #default stream description that is in onga_onga event
  #optional – default = NATURAL_GAS
  NATURAL_GAS
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
# The initial stream ID and device ID can be changed by setting the
# Cyflex variables below to new values.  This allows a GC to be used
# to sample different fuel streams and label the data correctly.
# These variables will be created if they do not already exist.
# If the @GAS_VARIABLES_LABELS keyword is not present in this file,
# the default variables OngaStreamDescp and Onga_device_id will be created.
# The variables will be set to the initial values specified in this file.
# !! OPTIONAL KEYWORD !!
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
# 2 new keywords have been added, @TIME_DATE and @DATE_TIME. Only one 
# can be used at a time. These
# keywords are used when reading the onga # file from the GC and determines
# which ordering of date/time should
be.
# @TIME_DATE format is    hh:mm:ss  dd-mm-yyyy    ex: 08:34:16 01/09/2020
# @DATE_TIME format is    dd-mm-yyyy  hh:mm:ss    ex: 01/09/2020
# 08:34:16
# If neither are specified, the TIME_DATE format will be used
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@TIME_DATE
@GAS_VARIABLES_LABELS
  #stream description                device id
  #optional
  #default vrbl=OngaStreamDescp      default=Onga_device_id
  onga_stream1                       onga_device_id
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
# Gas measurement device ID – sent to the cell via the onga_onga event
# and to Oracle as part of the header.  Used to identify the proper
# source of composition data when performing PAM calculations. 
# Remaining fields provide the necessary information to allow data to
# be ftp’d from the ONGA windows computer.  Some setup on the windows
# computer is required.
# !! REQUIRED KEYWORD !!
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@GAS_MEASURING_DEVICE
  #Device   Data source     URL           User             Password  
  #ID       directory
#  ctc_onga1 /ongadata/    172.28.8.15   ctgeng\fbfonga   fbfonga
  ctc_onga1  /ongadata/    172.28.8.15   ced\fbfonga      fbfonga
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
# Interval at which ongadata will check the GC computer for new data files.
# !! OPTIONAL KEYWORD !!
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@SET_POLLING_INTERVAL
  #polling interval[sec]
  #optional – default = 600[sec]
  300
@ACCEPTANCE_DATE
#Only place the last 2 days of data into the
# /data/onga_”@REGISTERED_TASK_NAME”
#directory
   2

#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
# The variable label specifies the name of a CyFlex string variable
# that will be created and updated with the date and time of the most
# recent data transfer.  The expected update period is the maximum

# time allowable between measurements.  If a new measurement is not
# found in the specified directory on the ONGA device withing this
# time period, an email will be sent to the individuals whose
# addresses are listing in the last field.  This message
# will be repeated at the interval specified as the write error
# reports period.
# !! REQUIRED KEYWORD !!
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@GAS_DATA_UPDATE
  #Variable   Expected update Write Error reports Email addresses to receive
  #label      period[min]     period[min]         reports.(Max 10 adrs)
  ONGA_update 60.0            60.0                js398@cummins.com,        \
                                                  kent.e.olson@cummins.com, \
                                                  Hui.Xu@cummins.com \                                                                                  john.c.stetter@cummins.com,\
                                                  phillip.l.roach@cummins.com,\
                                                  David.Snyder@cummins.com, \
                                                  Weiyang.Lin@cummins.com,  \
                                                  nc643@cummins.com,        \
                                                  Brian.Lay@cummins.com      

#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
# NOTE!  Replace Stop with Reject when we switch to the latest version
# of ongadata.
# The failure action code in the following specifications can be Stop,
# Warning or Continue.  Continue, Stop and Warning will all cause an
# error message to be written.  Stop and Warning will cause an email
# to be sent to the above list of recipients.  Stop will prevent the
# onga_onga event from being set and the data file will not be
# transferred to the /data/onga/ready/$site directory.
# Only the first character of the action code is actually read by the
# program.
# It can be upper or lower case.
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
# Upper and lower bounds for the sum of the measured component species
# gas concentrations.
# !! OPTIONAL KEYWORD !!
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@GAS_UNNORMALIZED_LIMITS
  #minimum percentage  maximum percentage   failure action code
  #default min = 98.0  default max = 102.0  default = Warning
  98.0                 102.0                Warning
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
# The file pulled from the ONGA computer has date and time stamp
# information in the file and has a filename that is partially based
# on the date and time.
# A check is performed to make sure the two are consistent. They
# should agree within the tolerance specified below.
# !! REQUIRED KEYWORD !!
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@GAS_TIME_DIFFERENCE_LIMITS
  #maximum time difference (min)                 failure
  #between file name and time in file            action code
  59.0                                           Warning
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
# A check is performed on the amount of change from one measurement to
# the next on all the measured species.  The check will return failure
# if the difference between the values is greater than the specified

# percentage of the SMALLER value.  The check will not be performed if
# the MAXIMUM value is less than 0.05%.
# !! REQUIRED KEYWORD !!
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@GAS_CONCENTRATION_CHANGE_LIMITS
  #max % change in conc       failure
  #for successive readings    action_code
  20                          Continue
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
# The iso- to normal- ratio for these two gases must be within the
# specified percentage.  Percentage checks will trigger the specified
# failure action if the difference between the values is greater than
# the specified percentage of the SMALLER value. The check will not be
# performed if the maximum value is less than 0.05%.
# !! REQUIRED KEYWORD !!
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@BUTANE_PENTANE_LIMITS
  #Percent i-butane must Percent i-pentane must failure
  #be within n-butane    be within n-pentane     action code
  50.0                   50.0                    Continue
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
# Concentrations limit checks are performed for all the measured
# species where there is an entry that is not a dash.  All values are
# in %_conc.  Specified minimum and maximum concentrations of “-”

# indicate that no check is being performed by the ongadata task. 
# Only non-dash values should be altered.
# The check for H2S and Nonanes is for an exact match with the minimum
# value which is expected to be zero.
# !! REQUIRED KEYWORD !!
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@GAS_COMPONENTS

  #extension   label       real_label    min_conc   max_conc  action code

  O2           Oxygen      ng_oxygen     0.0        0.10      Warning

  N2           Nitrogen    ng_nitrogen   0.0       10.0       Stop

  ME           Methane     ng_methane   87.0        –         Continue

  C2           CO2         ng_co2        0.0        –         Continue

  EE           Ethane      ng_ethane     0.0       13.0       Stop

  HS           H2S         ng_h2s        0.0        0.0       Continue

  PR           Propane     ng_propane    0.0        –         Continue

  IB           i-butane    ng_ibutane    0.0        –         Stop

  NB           n-butane    ng_nbutane    0.0        –         Continue

  IP           i-pentane   ng_ipentane   0.0        –         Continue

  NP           n-pentane   ng_npentane   0.0        –         Stop

  HX           Hexanes     ng_hexanes    0.0        –         Continue

  HE           Heptanes    ng_heptanes   –          –         –

  OC           Octanes     ng_octanes    –          –         –

  NN           Nonanes     ng_nonanes    0.0        0.0       Continue
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
# This keyword is used to signify if the $NORMALIZED_DATA section
# should be written to the output file.  Valid options for this
# keyword:
# TRUE or FALSE
# !! OPTIONAL KEYWORD !! – if not specified the $NORMALIZED_DATA section will
# not be written to the output file.
######################################################################
@WRITE_NORMALIZED_DATA_SECTION
FALSE

Notes:

In order to run multiple instances of ongadata, the spec file for the additional instance of ongadata MUST contain certain keywords: 

@REGISTERED_TASK_NAME

Data will be stored in the directory /data/onga_REGNAME where ‘REGNAME’ is the registered name specified below. If this keyword is not used, the default registered name, OngaData, will be used. The name must be unique for any given instance of ongadata.

@GAS_STREAM_ID_DESCRIPTION

The stream ID description which will be included in the onga_onga event that is used to transmit the composition data to the test cell node(s).
It specifies the composition variable that should be written to by the update_composition task running on the remote node. This stream
description can be overridden using the CyFlex variables specified under the @GAS_VARIABLES_LABELS keyword below.
If the @GAS_STREAM_ID_DESCRIPTION keyword is not present, the stream ID description will be set to NATURAL_GAS.
Only the time/date and unnormalized amount checks will be done if the gas stream ID is NOT NATURAL_GAS.

@GAS_VARIABLES_LABELS

Describes the device ID stream.

 

See Also:

On the Cummins SharePoint: Onga Data Retrieval and Transfer, Onga Data Quality Checks