CMI Home Page
News CMX System Producst Services Support Case Study Contact Us About CMI
Home | Log In | Search | Feedback | Site Map | Site Features | Document Center | Shop | Legal
 

Data Acquisition and Continuous Control

The heart of the CMX Process Control System lies in processing data acquisition and continuous control points.  The basic unit in this process is called a “Tag.”

Put simply, a Tag is the collection of all information necessary to acquire a process measurement, convert it to engineering units, perform a control calculation, send an output back to the field, and alarm any unexpected conditions.  A single CMX System can support up to 4096 Tags with a processing rate of approximately 1000 Tags per second on a Pentium II-based computer.

Unlike other commercial process control systems, CMXä does not require the concept of a Tag “type.”  Instead, CMXä lets the user configure any Tag with any of the available processing algorithms, while the System is on-line, and change these algorithm assignments as necessary.

Each Tag is made up of the following Tag components:

  • Tag Name Information
  • PV Processing
  • PV Filtering
  • Control Processing
  • Output Processing
  • Alarm Processing

Tag Name Information

The Tag name information part of the Tag contains the name, a 20-character description, an engineering units description (i.e., DegF, PSI, etc.), and the Tag’s scan frequency.

PV Processing

Process Variable (PV) processing specifies how the PV is to be calculated.  Each Tag acquires one process value per scan.  The user selects a processing algorithm by choosing from a library of standard algorithms.  All processing algorithms handle both analog and digital signals.  Some typical functions include:

  • Scale a Linear Input
  • Linearize a Thermocouple
  • Calculate Flow from a DP Cell
  • Get a Digital Contact Status
  • Sum of Values
  • Boolean Operations

The user can also create custom PV processing algorithms using the CMXä Algorithm Control Language (ACL).

 

PV Filtering

Once a raw PV is calculated by the process algorithm, the user can optionally pass the result through the Tag’s filter algorithm component.  For example, a raw PV value can be passed to a filter algorithm to derive a first order exponential.  As with the processing algorithms, CMXä has a library of standard filter algorithms to choose from. The user can also create custom filter algorithms using ACL.

Control Processing

After it is calculated, the PV can be used to supply control feedback to the process via the Tag’s control processing component.  CMXä provides a complete library of standard control algorithms such as PI, PID, Ratio Control, etc.  The user can also create custom control algorithms using ACL.

All standard algorithms support both initialization and normal control processing.  Algorithms are initialized before normal processing begins, whenever the controller mode is switched from manual to automatic, facilitating bumpless control transfer from local to the computer.  In addition, the PID-type control algorithms automatically provide logic for anti-windup protection and the initialization of cascades.

Output Processing

Once a control output has been calculated, the Tag’s output component indicates whether outputs are to be sent to the field directly or to another Tag in the System as part of a more complex control strategy.

Alarm Processing

The alarm processing component triggers alarm messages when the PV violates user-specified limits.  Each Tag is automatically assigned a bad PV alarm.  This alarm is generated whenever the PV algorithm detects an invalid value, such as an open thermocouple.  Once a PV has been set “bad,” any other calculations using the value will also have a “bad” result.  The user can specify up to 7 additional alarm checks in addition to the bad PV alarm.  Each alarm is defined by an alarm algorithm, low and high limits, a dead band, and an alarm priority.  The user can create new alarm algorithms using ACL.

When an alarm is first triggered, a message flashes in red at the top of the screen and remains there until it and all other alarm messages have been acknowledged. Once acknowledged from the alarm Display, the System clears and deletes the messages from the message queue, then returns the alarm condition to normal status.  The Alarm Display shows;

  • The Tag name and a description
  • Unacknowledged alarm messages displayed in red
  • Acknowledged messages displayed in yellow
  • The real time PV displayed in green, and
  • The alarm name with the alarm limit that was violated.

For specific alarm details, the Operator can display the Tag that triggered the alarm and consult the Alarm Algorithms Sub-display.  Here, up to seven alarms, their alarm priorities, status, and the date and time of the most recent alarm can be reviewed.

The following alarm priorities are listed starting with the lowest priority:

  • None - The alarm is indicated but not logged in the Alarm and Function Change (AFC) log.
  • Log only - The alarm is indicated and entered in the AFC log.
  • Seqintr - The alarm can interrupt SCL programs.  They are indicated and entered in the AFC log.
  • Console - The alarm can interrupt SCL programs and can be displayed on the console.  They are also indicated and entered in the AFC log.
  • Audible - The alarm has the highest priority and includes all the functions of a console priority alarm.  The alarm message is also put into the audible alarm queue.

The Operator also can enable, disable, or override a Tag’s alarms, change an alarm priority, and modify its alarm algorithm parameters from the Alarm Algorithms Sub-display.

History Sub-display

The History Sub-display presents the historical PV data in a tabular format.  Several optional history command parameters limit the range of the report to before, after, or around a  specific date and time.  The report can be furthered by specifying a particular history class.

Graph Sub-Display

The Graph Sub-display plots up to four PVs on the same display, or displays dual graphs each featuring one PV plot.  A set of formatting parameters controls the time range and general appearance of graph(s)

Tune Sub-display

The Tune sub-display graphically shows real-time trends for the PV, setpoint, and output parameter of a Tag and the PV of a second Tag.  All limits can be changed when selected or by command.

Creating New Algorithms

Besides supporting pre-defined algorithms, CMXä also furnishes the user with a means of writing custom algorithms.

ACL, the Algorithm Control Language, is an easy to learn language that makes the manipulation of process data very straightforward and simple.  ACL defines the algorithm and describes the resources it needs within the Tag such as the form of data storage, references to data sources, and presenting information to the Operator.

Reversed Polish Notation

Users who have worked with Hewlett-Packard calculators will have no difficulty with ACL’s use of Reverse Polish Notation (RPN).  Reverse Polish is simply a means of defining a calculation by stating the operands prior to the operator.  For example, 2 * 3 would be expressed as 2 3 * in RPN.

Program Structure

An ACL source file is organized into three sections:

  • Declaration states the kind of algorithm being defined and lists the required data storage resources.
  • Algorithm-Specific Parameters supply the details needed to meet the individual requirements of the various kinds of algorithms.
  • Executable Code which falls into two categories; Algorithm Initialization Code and Algorithm Control Code.

Continuous History

The CMXä Continuous History System automatically records the PV of every Tag in the System at regular user-specified intervals.  Always operating in the background, the Continuous History System updates a cyclical history file with the most recently collected data.  Once a history file is full, the System begins overwriting records, starting at the first entry, until the file is full once again repeating the process.  Hence the name “Continuous History.”

The Operator can choose to view continuous history selectively from a Tag display, as tabular reports or as graphs through the associated Graph and History Sub-display.

Configuring Continuous History

When CMXä is initially configured, the user defines up to 16 continuos history classes for the application based on the following criteria:

  • The class names and descriptions are assigned by the user.  Class names are used to retrieve historical data for presentation in displays and in reports.
  • The period specifies how often PVs will be collected.  The period must be expressed in multiples of one minute.
  • The history algorithm determines how a continuos history class PV gets processed.  Processing options include:
  • PV spot values
  • PV averages
  • Minimum PV values
  • Maximum PV values, or
  • Standard deviation
  • The class size specifies how much data will be stored for a class.  The user can select the number of days, hours, and minutes of history to be maintained before the file wraps to the beginning and starts overwriting.

When viewing continuous history, the Operator can select a tabular presentation by simply typing “history” or a graphic time-based plot by typing “graph” from any Tag Display. The graph sub-display plots up to four PVs on the same display, or displays dual graphs each featuring one PV plot.  A set of formatting parameters controls the time range and general appearance of graph(s).

(home)


[ News ] [ Products ] [ Services ] [ Support ] [ Case Studies ] [ Company Info ]
[ Home ] [ Log In ] [ Search ] [ Contact Us ] [ Site Map ] [ Features ] [ Store ] [ Legal ] [ Y2K ]

Questions or comments about this website? webmaster@controlmaster.com
Sales? sales@controlmaster.com

Copyright © Control Master, Inc., 1990-2007 - All Rights Reserved
Last Modified: July 30, 2007