 |
 |
 |
semsCAD |
| The SemsCAD
simulation environment has been designed to cover a broad range of simulation
applications. In its largest version, SemsCAD serves as a tool for developing new models
and solution algorithms for any process which can be described using the SemsCAD database
structure. |
| Design Concepts |
| The SemsCAD concept can be compared to
a spreadsheet program, where the configuration of the calculations corresponds to the
configured process model in SemsCAD, and the figures in the calculation compares to the
dynamic variables of the Process model. Diagrams in the spreadsheet program compares to
trend curves in SemsCAD. |
| semsCAD Applications |
| To date, SemsCAD has been used to
simulate nuclear, conventional power, combined cycle plants, distillation, recovery
boiler, district heating and natural gas grid plants. The model libraries are listed at
the end of this document and grow continuously. |
| General Purpose Simulation Environment |
| SemsCAD can be tuned for certain
applications such as training, design, or analysis simulator. The design simulator is
meant for a process or process automation designer, who needs a tool to test the
applicability of a process design or the automation system connected to it. Most of the
components used by the designer are included in the component library of the simulator.
The creation of the process to be simulated takes place graphically. SemsCAD can be used
in most of the different phases of the design process. One of the main virtues of SemsCAD
in the process design is the possibility of using the same database for all different
phases, thus avoiding unnecessary data transfer. SemsCAD software consists of a flexible
user interface, simulation software libraries and application specific files. The
simulation executive system forms the heart of the SemsCAD system. It interprets commands
given by users, and according to commands manages the database, controls the duration of
simulation runs, and displays simulation results. The command interpreter also
communicates with the graphics software package used on a workstation. The application
specific files contain the description of the specific processes to be simulated. SemsCAD
model programs utilize and update the data in the database during program execution. At
any time, the current instance of the real-time database can be saved into a file,
snapshot file, containing a complete state, that can be used, for example, as an initial
state for later utilization. In order to enable a construction of various simulator
combinations, SemsCAD software is organized into packages. The process design tool package
is used for comparisons of simulated results with measured transients, process model
parameter estimation and controller tuning. |
 |
| Plant Project Activities |
| The models used for the components are
designed so that the necessary input data is available on the basis component manufacturer
specifications. A very important feature of the design simulator is the speed of
simulation which should be clearly faster than real-time while still maintaining the
necessary accuracy level. |
 |
| For the analysis simulator, the speed
requirement is not as strict. A more important feature is the accuracy of simulation in
the extreme values of process parameters encountered during start-up and emergency
conditions. The analysis simulator can be used for the design of start-up and emergency
procedures for the operators. |
| A full design cycle should also
produce a training simulator for the operators. The required sophistication level of the
simulator depends naturally on the complexity of the process. SemsCAD simulation
environment has the basic components of the analysis simulator as a basis for a training
simulator. The SemsCAD scope and types of simulation is illustrated above. |
| Defining
Models |
| The simulation system can be defined
by using the SemsCAD command interpreter on an alpha-numeric terminal or the graphic
interface on an engineering workstation. The simulated process is described by means of
modules. A module represents a well-defined part or component in a physical process. The
modules and their mutual connections are mapped onto a computational network and the
process can be simulated without any program recompilations. The modules consist of
arrangements of calculation level elements. |
| The governing differential equations
of the process under study are solved using implicit methods. |
| Graphical
Interface |
| The graphic user interface has been
designed to provide a user-friendly way of communicating with the SemsCAD simulator. The
basic idea has been the minimizing of data errors due to typing or misinterpretations. All
names and parameter values are given only once while all connections can be made
graphically. This covers the whole set of plant components from pipes and valves to
automation system modules, including analog and binary signals. |
| The tools available to the user
include a symbol editor, a picture editor, and an alpha-numeric parameter editor. |
| Symbol Editor |
| The symbol editor can be used to
define a graphic symbol for any module defined in the SemsCAD database, including a
sub-process or even commands. The symbol libraries are also maintained under control of
the symbol editor. |
| Picture Editor |
| The picture editor is the main tool in
using the SemsCAD simulator. It is used along with the parameter editor to define the
process to be simulated and to modify it. The simulation process itself is also controlled
using the picture editor. the number of pictures connected to a process being simulated is
not limited. Also, the same components can exist in different pictures. Thus, a part of
the process can be drawn on the automation picture to indicate the location of the
automation system. The picture can be drawn on a laser printer in a form comparable to
that available from a CAD system. |
| Parameter Editor |
| The parameter editor is a window
containing a parameter form where the specific design parameters for each process
component can be entered and edited. |
| Alpha-Numeric Interface |
| The alpha-numeric user interface
provides a conversational way of communicating with the SemsCAD executive in any computer
system, independent of the operating system. The command language resembles a natural
language. If the command parameters are not given at the command line, they will be asked
one by one. The commands themselves are also part of the SemsCAD database and can thus be
defined in any language. All commands and all the database contents can be stored and
retrieved as ASCII command files; i.e., for transfers of model data between different
computer systems. |
| Viewing
Trends |
| The simulation results can be viewed
on the workstation screen both as numerical values and as graphs. At present, six sets of
graphs can simultaneously exist on the screen. Typically, one of them shows the long-term
behavior of the system, while the others provide more actual data. All necessary data can
be stored in files and viewed on screen or plotted on a laser printer. All modes of
operation include a help facility which gives information of proper usage of the commands
or menu choices. |
| Network
Operation |
| The SemsCAD simulator is designed to
operate in a network environment which includes workstations and computer servers.
Typically, a process is modeled starting from smaller units (sub-processes) which can be
tested by working on the workstation. When a very large process model is being put
together from sub-processes, a more powerful computer can be employed for the simulation. |

|
| The SemsCAD simulator consists of four
separate processes, three of which are fully asynchronous. The process include the user
interface, a network part of two processes communicating synchronously over the network
(linker and server), and finally the SemsCAD itself. During simulation SemsCAD will look
for user commands at the end of each calculated time step. The workstation end of the
network part has a special task of taking care of all the separate output windows (text
and graphs). This arrangement assures that the most time-consuming part, the simulation,
can proceed without unnecessary delays while retaining the output information. To minimize
the amount of data transmitted over the network, the system data are clearly divided into
two databases with the same structure. All graphics data resides on the workstation while
the process parameters, simulation data, and large output files reside on the computer
server. |
| External Communication |
| For communication with external
systems, an external communication module type can be used. It can be configured to read
and write the simulation variables by their names. The write commands will be recorded for
later use during replay. |
| This means that any variable changes
introduced by means of the external communication module will get this functionality. |
| Operator Interface System |
| When using SemsCAD for a plant
analyzer or a training simulator, special operator interfaces can be arranged by using a
special PC-based package, MacroView. It has all the facilities normally available for an
operator interface system, and also the special features required for connection to a
simulator, like showing the simulated time rather than normal real-time, possibilities for
snapshots, etc. MacroView is connected to SemsCAD by means of Ethernet, TCP/IP, and the
external communication module. |
| Structure
of semsCAD Simulator |
| The SemsCAD database structure
supports hierarchical model description. |
| The user operates normally on the
component level using predefined process components such as pipes, valves, heat
exchangers, vessels, etc., which automatically generate the calculation level objects
(nodes and branches). The tested parts of process can then be defined as processes, which
in turn can be used to define larger processes. The database takes care of component
naming according to a set of rules. special models, not included in the process components
library, can be made up by using the calculation level elements, and be assigned as a
sub-process type of model, and can have its own graphical symbol. |
| Another important feature due to this
structure is the possibility to connect measurements inside of the process component
modules. |
| Subprocess Definitions |
| Parts of the model can be defined to
belong to a number of sub-processes. Several sub-processes can contain the same parts of
the model. This gives a very powerful tool for trying out different versions of the plant,
starting from an identical set of initial data. also, it can be used for switching between
an external control system and the SemsCAD control system. |
| Simulation
Run |
| The simulation run consists of a
preparation stage and a computation stage. The preparation can be divided into an address
resolving phase and an initialization phase. In the first phase the topological structure
of the user-defined system ismapped onto the computational network by resolving name
references to indices of array elements. |

|
| In the second phase state variables
are initialized and various constants are computed. The computational stage consists of
solving sets of non-linear algebraic equations interactively. Several sets of linear
equations are solved during every iteration step. |
| Computers |
| As a future-oriented project, SemsCAD
has been designed for the full and effective usage of the powerful processing capabilities
of the modern Unix workstation and thus represents the latest available technology. The
SemsCAD software has been programmed using standard FORTRAN 77, X-lib, and Motif for
machine-independence. |
| The SemsCAD simulation environment was
originally developed for high-end computers. During an early stage of the program
development it was recognized that the computer power of Unix workstations would soon
develop to be sufficient even for reasonably large simulation tasks, like full-scale plant
analyses, #-dimensional reactor computations, and three-dimensional array flow
simulations. |
| Large Simulation Tasks |
| For very large simulation tasks,
vector processing has been taking into consideration already during the initial design of
SemsCAD. At present most of the models algorithms, as well as the calculation of material
properties, have been written in vectorizable form. The solution of the resulting sparse
matrix equations do not lend themselves easily to vectorization. While vectorizable, the
code runs slower than optimized scalar solvers. |
| Parallel Processing Options |
| In a program system like SemsCAD,
parallel processing can be used on several levels. On the system level, the user interface
is designed to operate asynchronously with the main body of SemsCAD. On the routine level,
certain parts of the simulation sequence can be run on separate processors in parallel.
Finally, on the loop level, separate iterations of a loop can be run on separate
processors. |
  |