Text preview for : A522 A Process Control Display Language; Hoffman.pdf part of IBM A522 A Process Control Display Language; Hoffman IBM share SHARE_61_Proceedings_Volume_1_Summer_1983 A522 A Process Control Display Language; Hoffman.pdf



Back to : A522 A Process Control Di | Home

!!SHARE 5
What We've Found
SHARE SESSION REPORT
Listed below are some significant findings that we have
confirmed through our testing: 61 A522 Process Control Graphics 15
SHARE NO. SESSION NO. SESSION TITLE ATTENDANCE
o The use of color not only enhances the appearance,
but also the usability of an information product. Graphics Applications Jim Boyle BKC
PROJECT SESSION CHAIRMAN INST. CODE
o Providing "tutorial" style information vs.
"reference" style information not only benefits Bendix-Kansas City Div, Box 1159, Kansas City, MD 64141 (816) 997-4773
inexperienced data processing users, but also SESSION CHAIRMAN'S COMPANY, ADDRESS, AND PHONE NUMBER
experienced users.
o Information products that contain a great deal
of information are acceptable as long as the A Process Control Display Language
information is easy to locate.
L. Hoffman
o Inexperienced data processing users generally have
a high satisfaction level if they are able to J. M. Huber Corp.
complete a given task successfully regardless of the
length of time it takes to complete it. Thornall St.

o A high percentage of people primarily use examples Edison, N.J. 08818
to complete a given task, rather than reading text.
201-549-8600
o The cost savings of ident fying and correcting
....
C
problems while a product s still in development
vs. out in the field is s gnificant.
Installation Code HUB

Graphics Applications Project
CD
Some Final Comments
Session A522
Testing information products has become an important part of
our Information Development cycle. The techniques Tue. 4:30 P.M.
we use have undergone a great deal of change in an attempt
to satisfy the end user's needs first and foremost, without Aug. 23, 1983
jeopardizing information development cycles.
ABSTRACT

This paper presents facilities required by both plan operations and plant

management. The designs are to be used as a yardstick to measure any process

control graphics system.

This display language is designed for rapid response in a process control

environment. The commands are extensive, yet simple, constructs for both

pictorial and data displays of process and associated data.

The language is not designed for any particular computer or display device.




3/W/rcg/l
Tasks and Scenarios Documentation Used for the Test
The test coordinator develops all tasks and scenarios for the The documentation that the test subjects use during a
test subjects to perform. The tasks are developed about the usability test resembles the final product as closely as
same time that the writers begin writing. possible. Retrievability can only be verified if the index,
table of contents, and glossary are complete. If the final
The tasks and scenarios are written in a friendly tone in an product will be a particular size and contain color, we make
effort to make the test subjects feel as comfortable as every effort to have the documentation cut to size with
possible. color pages. Physical characteristics play an important
role in how usable an information product is. For example,
Measurement criteria is developed for each task. Length of if a quick reference is to be designed narrow enough to fit
time acceptable to perfor. the task and whether into a shirt pocket and printed horizontally instead of
assistance is acceptable are some examples of measurement vertically, we would lose valuable data if we were to test it
criteria that we might use for a task. printed vertically on 8 1/2 x 11 paper. We would be unable
to determine how the style of the quick reference affected
Test Lab Setup the usability of the product.
To run an effective test, we make every attempt to set up "onitoring Techniques
our test lab like the intended user environment.
In most cases, we have one monitor per test subject. The
The test lab is divided into two rooms--the main area where monitor is responsible for:
the test subjects work, and the monitoring room where the
monitors view the test subjects. The rooms are divided by o Providing tasks and scenarios to the test subject
one-way glass.
o Observing and documenting the progress of the test
Test Subjects subject
....
c::
The test subjects that we choose must match the audience that
will be using the product.
o Debriefing the test subject
en o Writing up the problems found during a test
Bringing in test subjects who match the intended audience
is very important because the data that we obtain from o Providing encouragement and assistance to the test
our tests would be considered invalid if we chose the subject
wrong test subjects. If, for example, the stated audience
for a particular information product is novice users with The test coordinator teaches the test monitor how to perform
little or no data processing experience and a high school all of these responsibilities before the test begins.
education, we would not use individuals with college
experience or a programming background. The individual with Problem Reporting
college experience would most likely have more knowledge
than the novice user and could also make more assumptions The test coordinator is responsible for reporting the
and comparisons to other experiences. As a result, problems found during a usability test to the appropriate
information that a novice user would need might be missing people. We assign a severity code to each problem--from
from the information product. high impact to recommendations.
Team effort between test subject and test monitor is Both the test coordinator and the test monitors participate
stressed throughout the usability test, especially in a daily problem writing session each day after the test
at the beginning. As you would expect, people don't subjects leave.
like to make errors, especially if someone is watching
them. Therefore, we stress that the information product The problems are tracked and the problem fixes are verified
is being tested--not the test subject. We also stress by the test coordinator.
the fact that we not only expect, but want the
test subjects to find errors. Recommendations and conclusions are provided at the end of
the test.



3 4
PAGE 2
A Process Control Display Language TEXT AND DATA SOURCE:
---- --- ---- ------
L. Hoffman
Text should come from some source, such as the plant
J. M. Huber Corp. table (better known as a data-base). Most text is not
generated, but comes from some pre-planned source.
Thornall St.
Edison, N. J. 08818
CRT RESOLUTION:
201-549-8600
Installation Code HUB The characters displayed should be available in different
sizes and colors, and maybe even different orientations.
Graphics Applications Project Character resolution should be such that both textual
material and ISA standard symbols are readable from at
Session A522 least 2 feet away from the face of the CRT. (Note: ISA
is the Instrumentation Society of America. It is a
Tue. 4:30 P.M. "standards" group with many standard symbols for the
instrumentation field.)
Aug. 23, 1983

...
= LINES AND ISA SYMBOLS:
...:I
Lines, shapes (process diagrams), and prObably ISA
ABSTRACT: standard symbols should be presented in any color. Lines
should be displayed as solid or various types of broken
lines. Lines cannot be placed on top of each other.
This paper presents facilities required by both plant operations Lines that intersect are different from lines that cross
and plant management. The designs are to be used as a yardstick in the two-dimensional plane. This differentiation
to measure any process control graphics system. should be quite clear to prevent a mis-interpretation of
the diagram.
This display language is designed for rapid response in a process
control environment. The commands are extensive, yet simple,
constructs for both pictorial and data displays of process and
associated data. COLORS FOR SYMBOLS AND VALUES:
The language is not designed for any particular computer or
display device. Process values, including tank levels, flow rates (and
appropriate labels and units) should be displayed in
various colors and sizes.
PROCESS DISPLAY CHARACTERISTICS:
STATUS DISPLAY:
There are some characteristics that are required for a process
graphic display.
Process status displays for both present, recent, and
The following considerations are not an exhaustive list, but are historical values should be presented in various colors.
special considerations for a "host-based" process control system. Most status displays will be bar charts or line graphs.
These considerations are based on problems and requests from our A useful feature may be to provide a projection of future
process control users in the field. conditions, based on past history.
PAGE 3 PAGE 4
rocess is from optimum or set point.
"pie" chart display may be useful for control loops. This may
ALL displayed values will come from the plant table, or Ie a display of the degree of control in the loop, or the percent
data-base. There may be a need to reference the data-base for f full scale for the loop.
set-up of a display, especially in the case of direct input.
(This way, the description and units of a displayed value can be "bar chart" of loop values with a range from 0 to 100% may be
presented so that nothing will over-write that text.) seful in determining where the loop control points are. The
era tors could tell that a loop is near the end of control by
The description of physical units, which should be displayed w close the values are to either end of the scale.
after a value, should be obtained from the plant table since this
is the master description. The values are calculated by applying IVIAT charts are used in computer systems for resource control.
calibration factors such that these physical units result. ny variables are presented on a polar coordinate system and
_~rmalized to a scale of 0 to 1. A properly tuned system is
~
By the use of the stored units description for values, there is presented by a circle. This same technique may indicate a
little or no room for error in any displayed value. ell-tuned" plant that is producing product in an optimal
~ shion. This would be an area for future research.

SPECIAL FEATURES:


There are features that should be specified for process displays.
....
c:::;
Some of these exist in other vendor software, and some are things
that we feel should be included in the capabilities.
CO There should be more than a "static" display of the plant, or
section thereof. The displayed values may change color,
depending upon tOlerences or some other criterion. Not only would
we get a value displayed, but we would have an idea of its
relation to some critical value.

If a tank is displayed, the pictorial level in the tank should be
displayed. This is quite prevalent in other vendor displays.

The status of an element should be displayed as a different
symbol or color. This would allow the operator to differentiate
between an open or closed valve, or a motor that was started or
stopped, etc.
An element which is in an "outof limit" condition should be
displayed in an "alarm" color, or flashing, to catch the
operator's eye. Most examples I have seen turn either a value or
a process symbol to a RED color when the element is in an "alarm"
condition.

Process variables, once relations are established, could be
displayed in a number of ways.

Trend displays could have the option of not only displaying the
mean value, but also could display the standard deviation and the
mean value.
There is a definite need for the ability to display how far the
PAGE 5 PAGE 6
SAMPLE OF ~ GRAPHIC DISPLAY FOR ~ TYPICAL PLANT THE COMMAND LANGUAGE CONCEPT:

This method has a set of commands that would build a display
through a software interpreter. The commands could be entered
12/16/81 08:35 AM UNIT B4 GRADE X660 into the system by any editor and then the display could be
generated at some later time or on demand.
GAS TEMP = 250 DEG F I GAS FLOW = 16.3 CFM
GAS PRESS= 25 PSIG I SET POINT= 16.3 CFM This method would be similar to the process control system
I language, in that the commands would be compiled into some
I BURNER GAS 600 DEG F internal representation and then interpreted at high speed. The
I BURNER GAS 100 PSIG translation into machine pseudo-code reduces the repetitive
ATOMIZING AIR= 160 SCFM V BURNER GAS 202 SCFM character instructions that would otherwise be done to recognize
SET POINT = 155 SCFM 1 1 SET POINT 200 SCFM english commands.
------->1 1<------
I REACTOR 1 We have seen one rather popular system which uses the command
------->1 1<------ GRL FLOW = 25 CC/MIN language concept. The capabilities and speed are such that this
BURNER AIR 250 PSIG I I SET POINT= 25 CC/MIN is a very good way to generate, display, and modify graphics for
SET POINT 250 PSIG I GRL PRESS= 18 PSIG a process control system. More about this language later.
BURNER AIR =9322 SCFM 1
SET POINT =9200 SCFM 1 QUENCH TEMP = 1132 DEG F
BURNER AIR = 700 DEG F 1---------> SET POINT = 1100 DEG F
PRODUCT OUT = 4.70 LB/MIN ADVANTAGES:

...
-= This method is not dependent upon a particular CRT.
= The commands can be entered into the system at any
"background" fashion.
time in a

Special routines (macros) can be set up for any shape. Since
these are combinations of basic commands, the routines do not
have to be set up by a programmer.
The display could be presented on a line printer for
"off-line" debugging.
Standards for symbols, connections, shapes, etc. could be
enforced since a program does the translation from some
"english" command to the graphic commands.

If a "standards" change were necessary, it would be much
easier to change the translator than to change all commands to
reflect a new standard, considering the investment in time and
effort on existing displays.
Special plot commands could be entered into the command
stream. If some special function were purchased for a
plotter, the functions could be checked-out without any system
changes. The translator would pass the special (or "native
mode") commands directly to the plotter.
The display could be set up anyplace, even some remote
location.




~
PAGE 7 PAGE 8

DISADVANTAGES:
For example, the BMW color CRT allows an operator to draw lines,
figures, circles, ISA symbols, and text. This information is in
The display is not visible while the commands are being the display internal buffer. When the "page xmi t" key is
entered. (It may be possible to build an interpreter into an pressed, the entire buffer, which represents the display in some
editor so that each command could be seen on top of the text numeric form, is sent to the computer. A program can be written
being prepared.) which will recognize all of the forms which have been displayed
on the CRT. Lines, text, circles, ISA symbols, etc. would then
The display will probably not be correct the first (or second) be translated into the graphics language of this paper.
time the COmmands are interpreted. The number of iterations
will be a function of the capabilities of the display Since the original BMW display is now in a general form, the
designer. display could then be presented on any CRT supported by the
system.
A different interpreter is required for each different type of
CRT or printer. To the best of this author's knowledge, there have been no
proposals along these lines.
An interface program to the process control system would have
to be developed to display the updated values from the plant
table.
There is a question of lines that cross. How does a general
display differentiate between two lines that might fallon top
of each other? (It is presently left to the human display
...
.....
designer.)
How does the display denote an intersection of two lines
c= versus two lines that merely cross on the display? (This is
presently left to the human display designer.)



A COMMON INTERFACE?


One of the above disadvantages is that one cannot see the result
of a command until all commands have been entered, compiled, and
run. This is very much like "batch" programming which has been
done for 25 or 30 years. Only one error is generally found in
each trial runl
Some CRTs allow the operator to build a display on the face of
the CRT and then transfer the commands (stored in the internals
of the CRT) to a host computer. The prOblem with this concept is
that the commands for one brand of CRT are not the same as the
commands for some other brand of CRT. Thus, there is no
portability across devices.
If we could translate the commands for one brand of CRT into the
language presented here, we could then run the translated
commands on any other CRT I
This language could be a useful portability tool and allow an
easy method for graphics entry.
PAGE 9 PAGE 10

A GRAPHICS LANGUAGE BASED ON SEVERAL COMMERCIAL SYSTEMS: COMMAND SUMMARY:


One popular process control vendor system uses a command language The commands in some vendor or IBM system are similar to the
to display process graphics, both data trends and pictorial commands in this system. The commands for this language are:
displays.
ALINE co10r,x1,y1,x2,y2,t,m
What are the elements of a process display? There are process
elements, such as tanks, valves, pumps, etc. These are connected ARC co10r,x1,y1,x2,y2,r,t,m
by pipes or lines and lines with arrows to show direction. Most
process elements have a value associated with them. The BACK co10r,x1,y1,x2,y2
displayed values should be updated frequently.
CALCULATE
At least one "language" is a series of commands and position
indicators which are converted to the BASIC language and then CIRCLE co10r,x1,y1,r,t,m
interpreted by a normal BASIC system. BASIC is also used to do
the controlling and sequencing of the plant elements in some CONNECT co10r,labe11,labe12,t,m
systems.
CONT x3,y3,x4,y4,x5,y5,x6,y6,x7,y7,x8,y8
IBM presented a paper on a "Picture Building System" in 1980 at
the SHARE meeting. It seemed as if many of the concepts in other DEBUG on/off
vendor systems were presented at that time. I do not know the
status of the language within IBM, but I have not heard any DO n COMMANDS, i TIMES,DX=dx,DY=dy

...
...
further discussion on the part of IBM.

My proposed commands are similar to some vendor systems and the
FREQ seconds

.... IBM system (as I remember them). The commands are listed and then
the details of each command are presented. An example of how
INCLUDE name,x1,y1,x2,y2
they would be used to construct a process display in use at a INTERSECT co10r,lab1e1,labe12
typical plant is presented.
LINE co10r,x1,y1,x2,y2,t,m

NAME display name, (description)
COMMAND STRUCTURE:
PLOT STATUS
The commands have a uniformity in arguments as far as possible. PLOT TREND
For example, every command used in a display starts in the same
way: PLOT DATA
line label (a number, optional) PLOT DEV
command
color PUMP co10r,x1,y1,s,391
lower left x-position
lower left y-position ROTATE a

Some commands, such as WINDOW or PLOT, cannot have a uniform TANK co10r,x1,y1,x2,y2,t
structure since those commands are not display element commands,
but could be thought of as "format" commands. TEXT co1or,x1,y1,s,this is the displayed text

TRACE on/off
VALUE co10r,x1,y1,s,249,w.d
PAGE 11 PAGE 12

VALVE color,xl,yl,s,27 date and time for the values displayed. The time would be
updated, along with any values displayed, at the same time
WINDOW name,xl,yl,x2,y2 interval as value updates. (It may be necessary to place the
date, time and display ID in some fixed position on the screen.
where (xl,yl) is the lower left hand coordinate of a line, the For purposes of generality, the ability to place this system data
first letter of text, a value, or some process symbol such as a on a screen should exist.)
tank. This is typical graphics representation, even back in 1964
on the old Calcomp incremental plotters.
In all instances, "x" represents a position on the horizontal DATA PLOT OPTION SUMMARY:
axis and "y" represents a position on the vertical axis.
The position (x2,y2) would be the end point for a line, or the There are several options which are valid only when a plot is
upper right corner of a rectangular area. requested. These are:
Any argument which begins with the letter "L" is a line lable, INTEGRATE option
denoted as "labell", etc. in the above summary. Line labels
begin in column 1 of the command and are merely numbers. We can PROJECT option
differentiate a line label from a command since all commands
start with a letter, and the line label is a number. The INTEGRATE has an effect only on one dependent variable
(y-value) .
The (description) option in the NAME command is for the menu
display. The PROJECT option is used only with a time axis. An
extrapolation into the future can be specified with this option
..... The parameter "a" in the ROTATE command speci fies the angle, in on the TIME command in a PLOT