Premier User Guide
Premier User Guide
Revision E
Last Revision: August 26, 2010
Copyright
© 2008–2010 Invensys Systems, Inc. All Rights Reserved.
All rights reserved. No part of this documentation shall be reproduced, stored in a
retrieval system, or transmitted by any means, electronic, mechanical,
photocopying, recording, or otherwise, without the prior written permission of
Invensys Systems, Inc. No copyright or patent liability is assumed with respect to
the use of the information contained herein. Although every precaution has been
taken in the preparation of this documentation, the publisher and the author
assume no responsibility for errors or omissions. Neither is any liability assumed
for damages resulting from the use of the information contained herein.
The information in this documentation is subject to change without notice and does
not represent a commitment on the part of Invensys Systems, Inc. The software
described in this documentation is furnished under a license or nondisclosure
agreement. This software may be used or copied only in accordance with the terms
of these agreements.
Invensys Systems, Inc.
26561 Rancho Parkway South
Lake Forest, CA 92630 U.S.A.
(949) 727-3200
http://www.wonderware.com
For comments or suggestions about the product documentation, send an e-mail
message to [email protected].
Trademarks
All terms mentioned in this documentation that are known to be trademarks or
service marks have been appropriately capitalized. Invensys Systems, Inc. cannot
attest to the accuracy of this information. Use of a term in this documentation
should not be regarded as affecting the validity of any trademark or service mark.
Alarm Logger, ActiveFactory, ArchestrA, Avantis, DBDump, DBLoad, DT Analyst,
Factelligence, FactoryFocus, FactoryOffice, FactorySuite, FactorySuite A2, InBatch,
InControl, IndustrialRAD, IndustrialSQL Server, InTouch, MaintenanceSuite,
MuniSuite, QI Analyst, SCADAlarm, SCADASuite, SuiteLink, SuiteVoyager,
WindowMaker, WindowViewer, Wonderware, Wonderware Factelligence, and
Wonderware Logger are trademarks of Invensys plc, its subsidiaries and affiliates.
All other brands may be trademarks of their respective owners.
3
Contents
Welcome.......................................... 17
Documentation Conventions.............................................17
Technical Support .............................................................18
Tools ................................................................................32
InBatch Configuration Architecture ................................33
InBatch Run-time Architecture........................................34
I/A Series Differences........................................................35
I/A Series Integration.....................................................35
I/A Series Batch Programs.............................................36
I/A Series Batch Configuration Architecture................37
I/A Series Batch Run-time Architecture .......................38
ProcessVar ...................................................................460
ProcessVarChange .......................................................461
ReportDef .....................................................................461
ReportLog .....................................................................462
ReportOutputTypes .....................................................462
ReportPrinters .............................................................462
ReportQueue ................................................................463
ReportQueueParams ...................................................463
ReportViewers .............................................................463
Transition ....................................................................464
TransitionExpression ..................................................464
UserProfile ...................................................................465
I/A Series Tables...........................................................465
Welcome
Documentation Conventions
This documentation uses the following conventions:
Technical Support
Wonderware Technical Support offers a variety of support
options to answer any questions on Wonderware products
and their implementation.
Before you contact Technical Support, refer to the relevant
section(s) in this documentation for a possible solution to the
problem. If you need to contact technical support for help,
have the following information ready:
• The type and version of the operating system you are
using.
• Details of how to recreate the problem.
Chapter 1
Overview of InBatch
Overview
InBatch is a flexible batch management system that you can
configure quickly and easily after you understand its
fundamental concepts. It is extremely important that you
understand these concepts before attempting to use the
InBatch system.
InBatch is Consistent with the ISA-88 standard. You can
create recipes quickly and easily and simulate their
processing against a model of the process – all before you
write one line of control code. You can also access complete
production history and materials genealogy.
InBatch provides out-of-the-box batch management
functionality that eliminates the need for unsustainable
custom code in a programmable logic controller (PLC) or
distributed control system (DCS) and dramatically reduces
your life-cycle engineering effort. The sophisticated batch
engine is responsible for unit-to-unit material tracking, short
term scheduling, dynamic batch and equipment
management, and batch history and reporting. The batch
management system also supports redundancy for critical
applications.
Process Modeling
A batch processing plant is made up of units and connections.
The five main components of the process model are:
• Units
• Connections
• Processing capabilities.
Units
A unit is any vessel that can hold or process materials. Some
units have no processing capabilities, such as bulk storage
vessels, manual add stations, and hold tanks. Other units
have significant processing capabilities, such as reactors,
blenders, mixers, dryers, retorts, and washers. Examples of
processing capabilities are agitating, mixing, heating,
cooling, blending, and packaging. Other examples of units
are storage tanks, silos, ovens, fillers, washers, retorts,
molders, bottlers, wrappers, cartoners, and palletizers.
Connections
Connections are the equipment that is necessary for
transferring a product from one unit to another. Examples
are pumps, valves, separators, condensers, and flow meters,
Many plants have units that are connected to more that one
unit and some plants have multiple connections between the
same two units.
Phases
Processing and transferring capabilities are defined by
phases. Each phase is an independent action that can contain
a unique set of parameters. Parameters configure the phase
based on recipe requirements. Phases can be automatically
processed by the control system or manually run by an
operator.
Recipe Management
The batch control system manages and constructs recipes
according to the guidelines outlined in the ISA-88 Flexible
Batch Specification.
Master Recipes
You can construct and edit master recipes. Master recipes
are not specific to process lines, but are independent of
equipment. You can assign master recipes to any process line
(train) that has units belonging to the classes of process
equipment defined in the recipe.
A master recipe is not size specific, but is scalable to the
batch size defined by production scheduling. You can enter
all formula quantities for ingredients, intermediates,
by-products, and finished goods as either actual quantities or
as a percent of the total batch size. Quantities expressed in
percentages are scaled by the batch management system
when the batch runs.
Control Recipes
A master recipe becomes a control recipe as the units defined
in the train are dynamically allocated and used in producing
a batch.
Recipe Editor
Use the Recipe Editor to construct and alter recipes. You can
save, retrieve, and print recipes. A revision control system
provides you with an accurate time-stamped history of all
changes and revisions that have been made to the recipe.
Batch Management
Batch management consists of scheduling batches,
initializing batches, coordinating the processing of batches
with the control system, interfacing with operators, and
storing all batch activity. You perform these tasks using the
Batch Manager, Batch Scheduler, and Batch Display
programs.
Batch Scheduling
Use Batch Manager to dispatch to plant floor operators the
batches that are ready to run. To schedule a batch, you
manually enter the batch identification, master recipe, batch
size, and train (process line) into the Batch Scheduler. After
you enter the batch, you can initialize it.
Batch Initialization
You must initialize each batch before you can run it. The
initialization process involves validating the recipe, checking
if the train exists, checking if the bulk materials defined in
the recipe are available in the train, ensuring that the recipe
equipment requirements are satisfied by the train, and
verifying that the Process Model database is compatible with
the recipe.
History
Batch Manager captures and stores all processing and
operator activity when a batch runs.
Batch History
InBatch uses Microsoft SQL Server for its historical
database.
The batch management system logs all information related to
the production of a batch to the history database. This data
includes all the events, process data, production information,
material usage, operator comments, operator actions,
equipment used to produce the associated batch, and all
batch-related process alarms.
Batch Reports
InBatch uses Wonderware® Information Server (WIS) for
reporting. WIS provides a flexible and open platform so that
you can easily build custom reports. You can use a set of
pre-defined report templates to design reports.
You can retrieve batch reports using the run-time reporting
system. You can automatically trigger reports while a batch
runs or at the end of a batch.
InBatch Integration
InBatch integrates with a number of other Wonderware
applications.
Tag Management
InBatch interfaces to other Wonderware components like
InControl™, I/O servers, DAServers, and InTouch® software
through tags. Also, you can integrate InBatch with the
Wonderware Application Server and leverage the full
capabilities of both components to extend the boundaries of
the implementation.
Model Editor
Use the Model Editor to construct the plant model consisting
of units, connections, phases, phase parameters, and
segments. Tags are automatically created using these names
and are used by InBatch to communicate with PLC or DCS
systems.
TagLinker
Use the InBatch TagLinker to link the tags you create in the
Model Editor to control system addresses. The TagLinker
provides capabilities to link tags automatically using default
links, manually through the graphical user interface, or by
external interfaces using a comma separated variable format
import or export file. The TagLinker also validates model
tags.
Tag Communications
InBatch communicates with other applications or
components through OPC, Suitelink, or Message Exchange
(MX). Tag communications are used to interface to unit
control logic, phase logic, and operator displays. The Phase
Logic and TagView tools are available to diagnose,
troubleshoot, and exercise tags communications.
TagView Tool
Use the TagView tool to monitor InBatch tags at run time.
Batch Alarms
Batch alarms are captured, associated with a batch, and
stored in the history database. The Unit or Connection Name
parameter of the tag is the key in accomplishing this. All
alarms from a designated InTouch application are monitored
by the batch control system. If the first portion of the tag
name corresponds to a unit, connection, or segment name in
the InBatch model, the alarm is automatically logged to the
InBatch history and associated to the batch that was active
in the named equipment at the time of the alarm.
Extensibility
InBatch includes ActiveX objects, ActiveX Servers, and a
library of API functions that allow integration with external
applications such as ERP and scheduling systems. You can
develop custom applications that access the batch control
system that share and exchange formulas and recipes,
materials, and production results.
InBatch uses Microsoft SQL Server for its historical
database.
These features make it easy for you to integrate with
enterprise resource planning (ERP) and advanced planning
systems (APS), by allowing InBatch to be a key link in
successful supply chain management initiatives.
InBatch Programs
InBatch programs include configuration programs, run-time
programs, and utility programs.
Configuration Programs
You can use the following configuration programs to develop
and manage your batch system.
Run-Time Programs
The following run-time programs are used by the InBatch
system during batch processing.
Log Viewer
(Optional) The Log Viewer displays messages for all system
activity, including the InBatch server, run-time clients and
development clients such as startup, shutdown, warnings
and errors, as well as time and date stamps.
Tools
Use the following tools to assist your development and
run-time processes.
LinkDBImp/Exp
Tag Communication
All tag communication between the I/A Series Batch and
I/A Series Control Suite is through the FoxAPI™. Tag
communication between I/A Series Batch and I/A Series
Control Suite is used to interact with unit control logic, phase
logic, and operator displays. Two utilities or tools are
available to diagnose, troubleshoot, and exercise tag
communications between I/A Series Batch and I/A Series
Control Suite.
Batch Alarms
Batch alarms in I/A Series Batch are captured, associated
with a batch, and stored in the history database. The
LOOPID parameter of the I/A Series compound is the key in
accomplishing this. All units, connections, and segments
have system tags that reflect the batch to which they are
allocated. Each unit, connection and segment also has a
corresponding I/A Series compound or block in the I/A Series
control station. When the Batch Manager allocates
equipment to a batch, it writes the Batch ID to the system
tags of the equipment. These tags are linked to the
COMPOUND.LOOPID parameter of the equipment. When
alarms occur in the compound, an alarm message is sent to
I/A Series Batch, where it is stored in the history database
and annunciated in FoxAlert.
The I/A Series Batch Display can start FoxAlert so that you
can view the alarms for a selected batch. Additionally, from
FoxAlert, you can select an alarm and append a comment to
it using the Alarm Comment Editor.
TAGMAP
IALink
CfgIALinkDB
STRMAP
Lock Manager
.BatchWR (lm_tcp)
RecipeDB MaterialDB BatchDB
BatchSched
(OCX Batch)
InfoMngr BatchMngr
SQL
Server
BatchDispl
(OCX Batch,
SFCOCX)
Batch History
TrainEdit UniLinkMngr SysTagMngr
ModelDB
SimMngr LogMngr
IADriver
IALinkDB
LogDB
IA Series
ControlState
Chapter 2
Environment Management
System
Overview
You can use the Environment Editor to define the
applications that run on a batch server. Configure an
environment by selecting from a list of available applications.
The editor then sorts and shows the list of selected
applications in the order that they are to be run. This
sequential ordering is caused by interdependencies of batch
applications.
The Environment Manager reads the environment database
to determine which applications are shown in the
Environment Display dialog box. The Environment Manager
ensures that the proper interdependent applications are
running and shows an appropriate error message otherwise.
For example, you want to add Batch Display to the
Environment Display dialog box. The operation of Batch
Display requires the server capability of Batch Manager.
Therefore, the editor must ensure that Batch Manager is
selected or already in the system.
The Environment Display dialog box is the user interface to
the batch server applications. Operators typically use the
Environment Display dialog box to view the status of
background applications and to start foreground
applications.
The Environment Management System provides an
environment for editing an offline copy of the Process Model
database (CfgModelDB). This capability enables you to edit
an offline copy of the model while the batch system continues
normal run-time operation. After you complete your changes
to the model, you can shut down the run-time system, update
the configuration process model database with the run-time
process model database, and then restart the system.
To terminate an application
1 From the Applications list, select the applications you
want to terminate.
2 Click Terminate.
3 Click Close.
Note You cannot update the environment when any other batch
application is running. This includes applications started on a
batch client that access your batch server. All batch applications,
including the run-time system, must be shut down before the
update can be successfully run.
Note The System Application status dialog box shows the status
of the Redundancy Manager if redundancy is being used.
2 Click Close.
Parameter Description
Max locked files The maximum number of database files under lock
manager control. The default is 256.
Max locks in queue The maximum size of the file lock request queue. The
default is 128.
Max users The maximum number of users lock manager may control.
The default is 32.
Redundancy Time-out The number of seconds that the backup computer waits
when a communication failure occurs before it becomes a
master (applicable to redundant systems only).
User ID Time-out The number of seconds that the current User ID is
retained before it must be reentered. The default value of 0
retains the User ID indefinitely.
Number Recipe Levels Number of levels to the recipe procedure. Valid values are
2 and 3. The default is 3.
Allow Sync Approvals Allows the Recipe Edit user to optionally retain all recipe
approvals when syncing recipes. Options are 1 or 0. A
value of 0 completely removes this feature from
RecipeEdit. The default is 1.
Parameter Description
Default Domain Determines the default domain that appear in most dialog
domain or user boxes. However, all domain or user boxes
are editable. For the default domain name to be enabled,
you must exit and shut down the Environment Display.
Debug OS Security Determines the amount of information stored in the
WWLogger. A value of 1 records detailed OS security event
information in OS security mode concerning the user or
domain. A value of 0, which is the default, records only
basic user information in OS security mode. For more
information on security, see Security System on page 517.
Max Shutdown Time Determines the maximum allowed time in seconds to
properly shot down all services. We suggest setting this
value to 120.
5 Click Change.
If you do not click Change, the values that you entered do
not update.
6 Click Close.
Note System parameter changes do not take effect until you shut
down and restart your batch system.
Adding Applications
To add an application
1 On the Environment Editor dialog box, click Add.
The Add Applications dialog box appears.
Parameters Description
Seconds per Phase Length of time for which each new phase runs. The default
value is30 seconds.
Write R/O Tags Enables writing to read-only tags in the batch system.
Parameters Description
Parameters Description
Restarting Batches All batches are resumed in their previous state upon system
restart.
Phase/Batch Status The Batch Manager controls all active phases upon a single
batch phase becoming held or restarted.
Init Status Tags The Batch Manager sets all unit and segment status tags to
the default value defined in the Process Model.
LIFO Materials Material consumption uses LIFO instead of the default FIFO
method.
Unit States Enables the use of Unit State system tags by Batch Manager.
Refer to Chapter 9, Batch Management System, for details on
unit control using Unit State tags.
COM Interface Enables the use of COM for batch hooks in Batch Manager.
Server Node ID Sets the Batch Server unique identifier. Enables multiple
batch servers to use a single history database. Use only the
characters A through Z to define the ID.
Parameters Description
Disable Warm Disables loading and saving of warm restart information. All
Restart batches are lost when the application stops.
Parm Time (msecs) Time, in milliseconds, between each attempt to read a
parameter tag value with a valid timestamp. The default value
is 50 msecs. This parameter determines how often the Batch
Manager tries to read the parameter values at the end of a
phase.
Parm Timeout (sec) Time, in seconds, of all attempts to read a parameter tag value
before a timeout failure. The default value is 30 seconds. A
value of zero disables retries. This parameter determines how
long the Batch Manager continues to retry reading parameters
before generating an error.
Semi-Auto On The batch is placed in Semi-Automatic mode when a phase is
Abort cancelled.
Batch Stats The time interval at which batch diagnostic data is dumped
into the BatchStats.txt file.
We highly recommend that you use this parameter only under
the guidance of Technical Support.
Disconnect Clients Disconnects all deadlocked clients.
Parameters Description
Manual Operations Enables the selection of manual operation from Batch Display.
Parameters Description
Access Name Access name for which IBCli obtains values for the assigned
tags.
Advise All Performs an Advise All command on initialization.
Backup App Secondary application from which IBCli looks for tag values if
there is a communications failure.
Backup Node Secondary workstation from which IBCli looks for tag values if
there is a communications failure.
Parameters Description
Backup Topic Secondary topic from which IBCli looks for tag values if there
is a communications failure.
Connect Time (sec) Time after which an IBCli connect to the I/O server times out.
Disable Timestamp Disables the end-of-phase time stamp for this topic.
Force Use Tag Use tag name instead of the defined item name.
Name
Ping Time (sec) Time after which IBCli pings the I/O server to detect a
connection loss.
Recon Time (sec) Time after which IBCli attempts to re-establish
communications with the I/O server.
Response Time Time after which an IBCli request to the I/O Server times out.
(sec) The default is 15 seconds.
Verbose Mode Enables extensive messaging for IBCli information and
application errors.
Parameters Description
Parameters Description
InBatch MX Service(IBMXService)
The following table lists the parameters and their
descriptions for the InBatch MX service.
Parameters Description
Parameters Description
Read Delta Defines how much a tag value must change before it is read
and I/A Series Batch is updated. The default is 1.0.
Write Delta Defines how much a tag value must change before it is written
to the I/A Series Control Suite (Control Processor). The
default is 1.0.
Read Scan Rate Defines the Object Manager read scan rate. The default is
1 second.
Write Scan Rate Defines the Object Manager write scan rate. The default is
2 seconds.
Parameters Description
Mreaidx Poll Rate Defines the poll rate for I/A Series Batch updates. The actual
poll rate is the Mreaidx Poll Rate value times Read Scan Rate
value. The result is in milliseconds. The default is 500 ms.
Unlinked Tag Enables detection and logging to Batch Logger when tags are
Warning not linked. The default is False.
Unlinked Tag When this option is enabled, tags that are not linked are not
Ignore created by IADriver. This allows other tag servers, such as
SimMngr, to have the opportunity to create and service those
tags. Be careful when using this option because unlinked
phase or batch control tags that are controlled by a simulator
(that is, SimMngr) can cause unexpected results in a
production system. The default is False.
Max Precision Enables the maximum available resolution for tag values. The
default is False.
Parameters Description
FMI Logical Name If the value is not defined, the batch system uses the name
FBFMI by default. FBFMI is the default I/A Series alarm
destination name for Event Manager. You can assign a
different alarm destination name, so that when multiple batch
servers are on the same I/A Series network, I/A Series detected
alarms can be sent to the correct Event Manager.
Note The Name must be unique from all other applications in the
environment. If the Name is not unique, the environment
database might become corrupted.
Type Description
• Security Manager
Note Changing the Timeout value has a global effect; that is,
Environment Display waits the specified amount of time before it
reports any application that is available for termination.
Note You must use one of the following options when you run the
application. There is no feedback from this application. It runs
without any confirmation.
Option Description
sleep 150
etcmds -r
• The start run-time option does not initiate any client
applications such as Batch Scheduler and Batch Display.
Chapter 3
Process Modeling
Comprehensive Model
A comprehensive model approach uses all of the available
configuration tools of the flexible InBatch system. It also
provides complete material tracking and ease-of-use for the
recipe builder and operators.
In a comprehensive model, the physical process is defined
with units and connections. This gives the sophisticated
batch engine the information it needs to most efficiently
orchestrate your batch process. It also saves you from writing
a lot of custom code in the control system that would
otherwise be required to coordinate material transfers
between units. This is the preferred modeling technique
since it leverages the full power of the batch system.
A unit is defined as any vessel that can hold or process materials.
Examples of units are bulk storage vessels, reactors, blenders,
mixers, hold tanks, etc. Unique statuses can be defined that
describe the possible states that each unit can assume.
In addition to units, the comprehensive model includes
information about the material transfer capabilities between
units. A connection is any means of getting materials from
one units to another. A connection might be automatic
equipment that transfers product between units such as
pumps, values, and piping. Or it might be a manual transfer
such as an operator carrying a tote. A semi-automatic
transfer is one in which an operator may be required to
prepare some equipment such as a flexible pipe connection or
hose, before the automated transfers can take place. You can
accurately model all of these situations.
Connectionless Model
A connectionless model approach uses a subset of the
available configuration tools of the flexible InBatch system.
This approach requires a more complete understanding of
the process by the recipe builder and the operators. With
some extra work in the control system logic, a connectionless
model approach can also provide complete material tracking.
In a connectionless model, the physical process is defined
with units only. Units are the same in any model, that is, any
vessel that can hold or process materials. Unique statuses
can be defined that describe the possible states that each unit
can assume.
All units that have the same processing capabilities or
perform the same function are grouped in the same process
class. The processing capabilities of each class are defined
with phases. Each phase is an independent action that
requires a unique set of parameters that configure the phase
based on the requirements of a recipe. A phase can be
processed either automatically or manually.
Hybrid Model
The hybrid model approach uses a combination of elements of
the comprehensive and connectionless models. It allows you
to configure a process in a way that maximizes the benefits of
both approaches by providing all of the available
configuration tools, material tracking and ease-of-use for the
recipe builder and operators.
In the hybrid model, the physical process is defined with
units and connections. However, only the static, non-flexible
material paths are defined as connections. Flexible paths or
those that involve many possible destinations are not defined
as connections. Like the comprehensive and connectionless
models, all of the units that have the same processing
capabilities or perform the same function are grouped in the
same process class, and all connections between the same
two process classes are grouped into a transfer class.
Flexible paths that are not defined with connections use the
complementary process phase approach.
For more information on complementary process phases, see
Connectionless Model on page 71.
The most beneficial advantage of the hybrid approach is that
it can minimize the overall number of connections and
associated tags in the model while preserving all the
connections for paths that are constant.
Model Comparisons
This table summarizes the benefits, liabilities and
recommended usage for the comprehensive, connectionless
and hybrid model approaches.
1. Define units. X X X
2. Define units of measure. Optional Optional Optional
3. Define enumeration. Optional Optional Optional
4. Group units into process classes and X X X
define attributes.
5. Define all connections between X
units.
6. Define all fixed connections between X
units.
7. Group connections into transfer X X
classes.
8. Define the phases of each process X X X
class.
9. Define the phases of each transfer X X
class.
10. Define the segments and assign to Optional Optional
connections.
Units
A unit is a group of processing equipment that performs one
of the following functions.
• The unit processes materials. Examples are reactors,
mixers, blenders, and retorts.
Connections
A connection defines a group of equipment such as valves,
pumps, and flow meters that transfer materials from a
source unit to a destination unit. When you configure the
process model, you must define all connections between
units. Some processes may have more than one connection
between the same two units. In this case, you define each
connection separately.
Phases
A Phase is an independent process action. Phase logic refers
to the logical steps and sequences within the control system
that occur during the processing of a phase. You can
construct phase logic to automatically accommodate formula
parameter values received during run time. Parameter
values originate within a recipe.
Phase Types
There are three types of process phases and four types of
transfer phases. Process phases are classified as either
automatic, manual, or data. Transfer phases are classified as
either automatic, semi-automatic, manual, or data.
Automatic Phases
Automatic phases are executed by the control system.
Therefore, there must be phase logic in the control system for
the phase to execute. Examples of automatic phases include
bulk add, discharge, heat, and mix.
Manual Phases
Manual phases are executed by the InBatch Management
System in conjunction with an operator. The control system
is not involved in the processing of a manual phase.
Therefore, no phase logic is required. Examples of manual
phases include manual add and test.
Semi-Automatic Phases
Semi-Automatic can be defined only for transfer phases.
Successful processing requires the operator and the control
system to work together in order to successfully complete the
phase. Semi-Automatic phases require control system phase
logic. An example of a Semi-Automatic phase is drum add.
Phase Logic
Phase logic refers to the steps and sequences in a control
system that are exercised during the processing of a phase.
Phase logic makes the control system program very
structured. Phase logic is required to support every phase
defined as automatic or semi-automatic. For example, if a
process class of blenders has three automatic phases, each
blender in the process class requires three phase logic blocks.
Similarly, phase logic blocks are required for each automatic
or semi-automatic phase defined for each connection
assigned to a transfer class. The logic for each can be
identical; however, the physical I/O and internal address
assignments are different for each blender in the class.
Manual phases are processed by the InBatch Management
system through interaction with operators and do not require
phase logic.
The following diagram shows the structured interface
between phase logic and the InBatch Management system.
Phase Parameters
Phase parameters are used to configure, control, and monitor
a phase. There are four types of parameters: formula
parameters, phase control and status control bits, interlocks,
and control buttons. Each of these types is shown in the table
following the definitions.
Formula Parameters
There are three types of formula parameters: input, output,
and process variable.
A recipe consists of a header, a procedure, equipment
requirements, and a formula. The formula contains the
defined input, output, and process variable parameters.
Input and output parameters are used to define and track
material transfer quantities. Process variable parameters
define set points. Parameter elements, such as high and low
deviation, are used to quantify, define, and track the formula
when a batch is executed. Units of measure can also be
assigned to process variables.
Interlocks
Each phase logic block may require interlocks. Interlocks
provide safety and security for personnel and equipment by
preventing the processing of a phase when other equipment
or operators are not ready. You can assign all tags within the
system as an interlock to a phase. There is no limit to the
number of interlocks that you can assign to a phase. The
physical interlocking is performed in the control system, not
by the batch control system. In this case, the batch control
system serves as a diagnostic tool by showing the status of
interlocks.
Control Buttons
Operators use control buttons to initiate or alter process
actions during phase processing. Control buttons are
included in user interfaces for batch processing displays.
Each phase has two available control buttons. Control
buttons are associated with the values of discrete tags.
Segments
A segment is a subsection of a connection. You can define
segments in the process model whenever multiple
connections share the same equipment and when it is
necessary to prevent the automatic use of common segments.
Examples of segments are sections of common piping, shared
valves, and shared pumps. Defining and using segments is
optional. If you do use segments in your model, it is not
necessary to assign segments for all the connections.
Equipment Status
An equipment status represents the transition states of units
or segments and is defined in the process model. Equipment
status is evaluated before the allocation of units or
connections. The use of equipment status is optional.
Units of Measure
A unit of measure is an attribute of a formula parameter.
You define units of measure in the process model and define
them only for process variables. An example of assigning a
unit of measure might involve a process variable formula
parameter named Temperature. The unit of measure
assigned to this parameter might be Degrees F. Each process
variable in your process model should have a unit of measure
assignment.
Enumerations
An enumeration is a data class that is identified by a set
name in which a list of integer values correspond to an
alpha-numeric string value.
The enumeration data class is available for process variable
formula parameters. You use the Process Model Editor to
define enumeration data class set names and values.
Associate each enumeration set name with at least one
enumeration value and name. An example of an enumeration
is the set name Boolean. In this example, you could associate
the values 0 and 1 with the names False and True,
respectively. The use of enumerations is optional.
Tags
A tag is a collection of data or information that is given. Tags
are named and defined with the Process Model Editor. A tag
usually corresponds to a control system data point. Tags are
also used to configure batch control system applications such
as recipes and reports. All tagnames must be unique.
The batch control system has eight tag types: unit tags,
process tags, connection tags, transfer tags, system class
tags, system unit tags, system connection tags, and system
segment tags. Each type has a unique responsibility as
described in the following table.
Value
from
Control
Tag Type Use System Comments
Value
from
Control
Tag Type Use System Comments
Recipes:
Transition Logic
System Process Modeling: No Note 1: System tags are
Class Process Phase Formula internal batch control system
Parameters tags and are updated by the
Transfer Phase Formula InBatch Management
Parameters System.
Note 2: System Class tags
Recipes: are automatically generated
Transition Logic for each process and transfer
class defined in the process
model.
System All SCADA Applications No Note 1: System Unit tags are
Unit automatically created for
each unit assigned to a
process class.
System All SCADA Applications No Note 1: System Connection
Connection tags are automatically
created for each connection
assigned to a transfer class.
System All SCADA Applications No Note 1: System Segment tags
Segment are automatically created for
each defined segment.
Unit Tags
Unit tags define data points that are uniquely associated
with a single processing unit.
Process Tags
Process tags define all the data points that are common to all
the units associated with a process class. Each automatically
defined process tag generates a set of unit tags for each
member in the process class. For example, if there are three
units in a process class and one process tag is entered, three
unit tags are created: one for each unit in the process class.
Each of these unit tags correspond to a specific address in a
control system. Process tags are indirectly associated to the
control system by way of the unit tags that they create.
Process tags have an abstract nature; that is, they are not
directly associated with the control system. Process tags
represent a set of unit tags. Process tags become unit tags
when a batch is executed in a process. Process tags can be
used as part of recipe transition logic.
Connection Tags
Connection tags define data points uniquely associated with
a connection.
Transfer Tags
A transfer tag defines the data points that are common to all the
connections associated with a transfer class. Each automatically
defined transfer tag generates a set of connection tags for each
member in the transfer class. For example, if there are three
connections in a transfer and one transfer tag is entered, three
connection tags are created; one for each connection in the
transfer class. Each of these connection tags correspond to a
specific address in a control system. Transfer tags are indirectly
associated with the control system by way of the connection tags
that they create.
Transfer tags are abstract in nature; that is they are not
directly associated with the control system. They represent a
set of connection tags. Transfer tags become connection tags
when a batch is executed in a process. Transfer tags may be
used as part of recipe transition logic.
System Tags
System tags are automatically created by the Model Editor
when a process class, transfer class, or segment is added to the
model. There are four types of system tags:
• System class tags
Tagname Structure
The following table shows the tagname structure.
Number of
Name Characters
• 0 through 9
• !,@,?, #, $, %, _, &
Delimiters
The following table shows the delimiters for tagnames.
Delimiters
Automatically
Tag Appended
Classification Parameter Name Element Name Description
Automatically
Tag Appended
Classification Parameter Name Element Name Description
Tag Description
Each tag can be given a 120-character description. This
allows for complete documentation of every tag in the system.
Data Class
A tag can be classified as discrete, analog, string or
enumeration. Discrete tags have two logical states; zero (0)
and one (1). Analog tags reflect the process status with a
numerical value and can have many states. String tags are
identified by an alphanumeric value and may contain up to
80 characters. Enumeration tags are identified by an integer
value which represents a textual enumeration name.
Access Mode
Access Mode defines whether a tag is Read-only or
Read/Write. A check box is used to select the access mode for
a tag.
Trains
A group of units on which
a recipe is processed.
Connections
Each connection consists
of a source unit and a
destination unit.
Segments
A division of a
connection.
Control System
Unit and Connection
tags are linked to
control system addresses.
Example Plant
The following diagram shows an example plant structure.
Water Supply
Liquid/Oil Liquid/Oil
Separator 1 Separator 2
Receiving Receiving
Tank 1 Tank 2
Example Plant
Element
Deleted Related Deletions
Note You cannot delete a unit that is assigned to a train until you
remove the unit from each train. When you delete a unit that is
assigned to a train, the train names in which the unit has been
assigned are be listed in the Log Viewer.
Note The Model Editor dialog box does not open if you are
running the Train Editor or the TagLinker. You cannot start more
than one instance of Model Editor.
Deleting Units
Follow these steps to delete a unit from the process model.
To delete a unit
1 From the Units list, select the unit that you want to
delete.
2 Click Delete.
If you attempt to delete a unit that is part of a train, a
warning box appears, and the unit is not deleted. In this
case, you must first delete the unit from the train, and
then delete the unit from the model.
Note For every process tag that is created, unit tags are
automatically generated for each unit assigned to the class. These
unit tags, not the process tags, are associated to data points in
the control system. However, the process class tags are available
for assignment to formula parameters and to the recipe builder
through the transition logic expression builder.
Configuring Interlocks
Use the Edit Process Interlocks dialog box to configure
interlocks for a process class phase. To assign interlocks, you
must associate unit tags with the process phase and process
class.
To configure interlocks
1 On the Edit Phases dialog box, click Interlocks.
The Edit Process Interlocks dialog box appears.
The dialog box shows all the available units in the
process class and any tags (process class/transfer)
assigned to the selected unit.
Phase
Control/Status
Phase Logic Parameters Formula Interlocks and
Phase Name Required Required Parameters Control Buttons
Target Element
The target element is available for all parameter and data
class combinations.
Target Element
a) Agitate SpeedTime Process Yes Yes Yes No
Variable
Process Yes Yes Yes No
Variable
b) AgitOff N/A N/A N/A N/A N/A N/A
c) AgitOn Speed Process Yes Yes Yes No
Variable
d) Charge Quantity Input Yes Yes Yes No
e) Cool Temp Process Yes Yes Yes No
Variable
Rate Process Yes Yes Yes No
Variable
f) Discharg Quantity Output Yes Yes Yes No
g) Heat Temp Process Yes Yes Yes No
Variable
Rate Process Yes Yes Yes No
Variable
h) Soak Temp Process Yes Yes Yes No
Variable
Time Process Yes Yes Yes No
Variable
Actual Element
a) Agitate Speed Process Yes Yes No No
Variable
a) Agitate Time Process Yes Yes No No
Variable
b) AgitOff N/A N/A N/A N/A N/A N/A
c) AgitOn Speed Process Yes Yes No No
Variable
Phase
Control/Status
Phase Logic Parameters Formula Interlocks and
Phase Name Required Required Parameters Control Buttons
Assigning Connections
Each transfer class can have one or more connections
assigned to it.
Interlocks
Use the Edit Transfer Interlocks dialog box to configure
interlocks for a transfer phase. Interlocks are not available
for data type phases.
To configure interlocks
1 On the Edit Phases dialog box, click Interlocks.
The Edit Transfer Interlocks dialog box appears.
The dialog box shows all the available units in the
transfer class and any tags (process class or transfer)
assigned to the selected unit.
Formula Parameters
Use the Edit Formula Parameters dialog box to configure
formula parameters for a transfer class phase.
Phase Interlocks
Phase Control/Status and
Phase Logic Parameters Formula Control
Name Type Required Required Parameters Buttons
Target Element
The target element is available for all parameter and data
class combinations.
Actual Element
The actual element is available for all parameter and data
class combinations.
Preact Element
The preact element is available for analog input parameters.
Material ID Element
The material ID element is available for analog input and
output parameters.
Target Element
a) BulkAdd Quantity Input Yes Yes Yes No
b) Separate Quantity Output No Yes Yes No
c) Package Quantity Output Yes Yes Yes No
Size Process Yes Yes Yes No
Variable
Count Process No Yes Yes No
Variable
d) Condense N/A N/A N/A N/A N/A N/A
e) Transfer N/A N/A N/A N/A N/A N/A
f) LoadBulk Quantity Output Yes Yes Yes No
g) DrumAdd Rate Process Yes Yes Yes No
Variable
Actual Element
a) BulkAdd Quantity Input Yes Yes Yes No
b) Separate Quantity Output No No No No
c) Package Quantity Output Yes Yes No No
Size Process Yes Yes No No
Variable
Count Process Yes Yes No No
Variable
Phase
Control/Status
Phase Logic Parameters Formula Interlocks and
Phase Name Required Required Parameters Control Buttons
Target Element
a) ScaleAdd Quantity Input No Yes No No
b) ManAdd Quantity Input No Yes No No
c) AckAdd Quantity Input No Yes No No
d) PartsAdd Quantity Input No Yes No Yes
e) Fill N/A N/A N/A N/A N/A N/A
f) External varies varies Yes N/A N/A N/A
Actual Element
a) ScaleAdd Quantity Input Yes Yes Yes No
b) ManAdd Quantity Input No No No Yes
c) AckAdd Quantity Input No Yes No No
d) PartsAdd Quantity Input No No No Yes
e) Fill N/A N/A N/A N/A N/A N/A
f) External varies varies Yes N/A N/A N/A
High and Low Deviation Elements
a) ScaleAdd Quantity Input No Yes No No
b) ManAdd Quantity Input No Yes No No
c) AckAdd Quantity Input No Yes No No
d) PartsAdd Quantity Input No Yes No No
e) Fill N/A N/A N/A N/A N/A N/A
High and Low Limit Elements
a) ScaleAdd N/A N/A N/A N/A N/A N/A
b) ManAdd N/A N/A N/A N/A N/A N/A
c) AckAdd N/A N/A N/A N/A N/A N/A
d) PartsAdd N/A N/A N/A N/A N/A N/A
e) Fill N/A N/A N/A N/A N/A N/A
Preact Element
a) ScaleAdd Quantity Input No No No No
b) ManAdd Quantity Input No No No No
c) AckAdd Quantity Input No No No No
d) PartsAdd Quantity Input No No No No
e) Fill N/A N/A N/A N/A N/A N/A
Lot Code Element
a) ScaleAdd Quantity Input No Yes Yes Yes
b) ManAdd Quantity Input No Yes No Yes
c) AckAdd Quantity Input No No No No
d) PartsAdd Quantity Input No Yes No Yes
e) Fill N/A N/A N/A N/A N/A N/A
Material Id Element
a) ScaleAdd Quantity Input No No No No
b) ManAdd Quantity Input No No No No
c) AckAdd Quantity Input No No No No
d) PartsAdd Quantity Input No No No No
e) Fill N/A N/A N/A N/A N/A N/A
• Formula parameters
• Press the Select All button to enable the check boxes for
all the options.
Use Clear All to clear the all check boxes for all of the control
and status options.
Use Delete Tags to remove the tags from the options selected.
A warning message must be acknowledged before you can
delete the tags.
Use Clear Tag to remove the tags from the option selected.
Note Use the Data Class control to change the data class of a
process variable. If you change the data class by accident and
answers No to the dialog box prompt, the control may not reset to
the true data class. In this situation, reselect the correct data
class.
Chapter 4
Tag Linker
Overview
Within the InBatch environment, tags are used to
interconnect with the batch control program. Each tag has a
unique name and is associated with a specific class of data.
You create tags during InBatch application development.
For InBatch applications to communicate with other
applications and control systems, you must properly
configure all the required tags. Communication between
InBatch and other applications is accomplished using
SuiteLink. InBatch can also integrate to an ArchestrA
environment using the Message Exchange (MX) protocol.
Use Tag Linker to select, edit, and then export InBatch tags
to a comma separated variable (.csv) file. The .csv file
contains InTouch-compliant tagnames, including access
names. You can then import the tags in the .csv file into the
InTouch application using the InTouch DBLoad utility.
Configuring Tags
This section describes how to configure tags in a batch
system.
Selecting Tags
By default, the Tag Linker dialog box is initially empty to
indicate that no tags are selected.
To select tags, you can filter information by using the View
Filter Selection dialog box.
To filter tags
1 On the View menu, click Filter.
The View Filter Selection dialog box opens.
The View Filter Selection dialog box lists all the Units,
Connections and Segments that are available in the
current configuration Process Model database.
2 Select appropriate equipment from each list. Use the Ctrl
or Shift key to select multiple items.
3 Select the Analog, Discrete, String, Enumeration, or
Attributes option to refine filtering based on data class.
Data classes are defined when tags are created.
4 Click OK or Apply to update the lists in the Tag Linker.
Each area has a check box to the left of the group box.
Each check box enables the use of the particular area. If
you select only one tag, all these check boxes are selected.
In Single or Multiple selection mode (accessed through
the View menu), clearing a selection check box results in
the associated configuration parameters being ignored
when you click the Apply button. This limitation is useful
for changing only certain properties on multiple tags.
When you use Multiple Selection and attempt to change
the configuration settings for more than one tag, you
must enable both the check box and the setting within
the area.
Note The browse button is enabled only when you click Access
and select Galaxy on the Access Name dialog box.
Note Exporting tags that are not required in the InTouch HMI is
acceptable and perhaps convenient. However, batch utilities
constantly monitor and manage InBatch and InTouch processes. A
high quantity of unnecessary tags can degrade overall system
performance.
Validating Tags
Validation consists of verifying all accesses, attributes, and
links. Depending on the size of the process, validation may be
time consuming.
To validate tags
On the File menu, click Validate.
• If the validation is successful, a Validate message
appears.
• If validation errors occur, the associated tags are
shown along with an error or warning message. You
must correct error messages. You do not need to
correct warning messages, however, before system
operation.
Exporting Tags
Use Tag Linker to select tags and create a comma-separated
variable (.csv) file of the configuration information. You can
then import the contents of the .csv file into the InTouch
HMI using the DBLoad utility.
In the InTouch HMI, you can define remote tag sources from
which tags can be viewed and remotely referenced in an
application. InBatch can be one of these external sources. If
tags are remotely referenced, it is not necessary to use the
DBLoad utility to import the InBatch tags from the exported
.csv file.
Note InTouch does not support tags that are greater than 32
characters or have names that contain dots (.).
For details about the limitations of InTouch tag names, see the
InTouch documentation.
2 In the File box, type the name of a file to which all Tag
Linker configuration data is to be written. The name
must include the complete patch and the .csv extension.
3 Click OK. If the specified file exists, you are prompted to
overwrite it.
• What is the name of the .csv file that you want to export
to?
You can export all process model tags using the configuration
information defined in the Tag Linker.
Perform a run-time export if the control hardware (such as
InControl or PLC) is running the phases.
Importing Tags
If you edited the exported .csv file, you need to import it back
into Tag Linker for validation. The default file location is the
current configuration (config_A) folder.
The InTouch HMI allows you to define remote tag sources
from which tags can be viewed and remotely referenced in an
application. InBatch can be one of these external sources. If
tags are remotely referenced, using the DBLoad utility to
import the InBatch tags from the exported .csv file is
unnecessary.
Many of the tags that were created when the process model
was constructed must be assigned the appropriate Access
Name and associated with the proper Item. Use the Tag
Linker View Filter Selection dialog box to select the required
tags or groups of tags and then assign the appropriate Item
Name. In this example, you would assign values such as
V100 and C15000 to the Item Name field. You can change the
Access for each tag if required. Because there is one Access
Name in the example, you do not need to do this. You can
enter other parameters, such as scaling.
Some tags (by default) are not associated with an Access
Name. Instead, they have the InBatch Memory Tag
parameter enabled. These tags are typically the system tags
(string tags) that are used by InBatch to store system
information during run time. If you need to use the
information in these tags at the PLC level, you must enter
and apply the appropriate Item Name.
After you have made the necessary modifications, open the
Tag Linker main dialog box. On the File menu, click Validate.
You may see a warning during the validation to indicate that
the InTouch Access does not have tags associated with it.
This is not unusual. The InTouch Access is used only when
the InTouch HMI is used as an I/O Server.
When you perform a simulation export and then a
subsequent DBLoad, the InTouch HMI is configured to
obtain all its control system tag data directly from the
InBatch server. Now that an actual control system has been
implemented, you want InTouch nodes to communicate with
it to obtain tag data. To do this, on the File menu, click
Runtime Export, and then use the DBLoad utility to load the
.csv file.
For each Access that was defined using the Tag Linker, you
must configure and run one instance of the IBCli application.
The only exception is if you get a warning message during
Tag Linker validation to indicate that no tags are associated
with a particular access. In this case, you do not need an
instance of IBCli. IBCli is configured using the Editor. For
each instance of IBCli, you must configure several
application parameters. For this example, you must
configure one instance as follows:
Access Name: TI_Tags
Verbose Mode
The Access Name argument is required and should match
one of the Access Names defined using the Tag Linker Access
Editor. The Verbose Mode parameter option is useful for
troubleshooting.
Chapter 5
• ProcStatus Tool
• ProcStatus Tool
Overview
Use the Model Editor to construct the plant model, which
includes units, connections, phases, phase parameters, and
segments. Tags are automatically created using these names
and are used by the I/A Series Batch to communicate with
the I/A Series Control Suite.
cfgModelDB
Model Editor I/A Series Tag Linker
(ModelEdit) (IALink)
cfgLinkDB
The tags created by the Model Editor are linked to I/A Series
Compound:Block.Parameter and Shared Variable tags using
I/A Series Linker. I/A Series Linker can automatically link
tags using the default links that are defined in the Tag Map
file. Additionally, you can manually link Model when the
default links are not applicable. You can also use I/A Series
Linker to validate Model to verify that the links are valid
I/A Series Control Suite tags.
Note Model Editor and I/A Series Linker cannot run concurrently.
Only one editor at a time can access the Model database.
You can use I/A Series Linker to manually link I/A Series
Tags. You can automatically link I/A Series Tags to Model
Tags.
Automatic linking of Model Tags is based on the mapping
configuration defined in the I/A Series Batch Tag Map file
(TagMap.txt).
These mapping files are ASCII text files. You can edit them
to set up the automation linking. The files contain default tag
mapping configurations. I/A Series Linker stores information
in the cfgLinkDB database.
TagMap File
The TagMap file (TagMap.txt) defines how I/A Series Batch
unit and phase tags are mapped to I/A Series control unit
and phase blocks. Based on the configuration parameters in
this file, I/A Series Linker automatically creates I/A Series
tag assignments for all phases and units in the process
model. Automatic generation reduces the need for extensive
manual input. The TagMap file contains a default
configuration that you can edit with I/A Series Linker.
Control Signals
Using the default TagMap file, all control signals are sent by
I/A Series Batch directly to II0007 of the corresponding
phase block. The PHASE_EXEC sequence block (located
immediately following the unit block in every compound)
then performs the required control operations on the
particular sequence block.
# Tag Map
# Revison History
# csz8/10/95 Initial Release
#csz10/2/95 Changed two stings to integers
#csz10/23/95 Changed data types for BATCH_MODE and
# 240STATUS
#csz2/22/96 Added Unit Status Tag Extensions and STATE
#
# PHASE CONTROL/STATUS PARAMETER EXTENSIONS (Discrete)
# START SENT TO PHASE BOCK CONTROL WORD
STARTI10007 7
# HOLD SENT TO PHASE BLOCK CONTROL WORD
HOLDI10007 1
# RESTART SENT TO PHASE BLOCK CONTROL WORD
RESTARTI10007 2
Ready Start
Held Hold
Run Restart
Done Abort
Aborted Reset
Interlocked
**READY INTERLOCKED
START
*HOLD
RUN HELD
*RESTART
DONE ABORT
RESET ABORTED
Legend
I/A Series Batch reads the Run status and indicates this
status on the appropriate display. When the phase block is
done, the HLBL or SFC logic sets the status word to Done.
This is done by the TO_INACTIVE SBX function of the
corresponding phase. TO_INACTIVE SBX processing is
initiated by having an HLBL Abort statement as the last
statement in the phase.
If HLBL or SFC logic determines that the phase has not
executed successfully, the control word can be set to Hold.
The PHASE_EXEC processes this phase control signal by
putting the phase in Manual, which activates the
TO_MANUAL SBX function in the phase. This puts the
phase in a Manual/Active condition and allows a phase to
maintain a Held status without the necessity of activating an
I/A Series Batch Exception Block. The functionality of a
phase block in Held status depends on whether or not
Exception Block processing is enabled, and whether or not
the particular dependent Sequence Block is using
TO_MANUAL SBX processing for a phase Hold condition.
On a RESTART control signal to the phase, the
PHASE_EXEC processes this phase control signal by
initiating an Auto/Active condition. The TO_MANUAL SBX
then continues its processing and sets the phase status to
RUN.
On an Abort control signal to the phase, the PHASE_EXEC
processes this phase control signal by initiating an (HLBL)
Abort for the phase. This activates the TO_INACTIVE SBX
processing of the phase which sets the status word to
Aborted.
After reading a Done or an Aborted status, the I/A Series
Batch issues a Reset control signal directly to the
corresponding phase block control word. PHASE_EXEC then
sets the corresponding block status to Ready.
In the phase block control state diagram, the rectangles show
the five control signals that I/A Series Batch sends to phase
blocks. The ellipses indicate the six status values that
I/A Series Batch expects to see in response to control signals.
The lines between the Run and Held states indicate that
I/A Series logic can initiate transfers between these two
states, independently of I/A Series Batch control actions.
However, if I/A Series logic initiates these transitions, it
must ensure that correct values for the status words are
maintained. If the status word is not maintained correctly,
I/A Series Batch shows incorrect phase block states, which
could result in batch processing errors.
Abort *READY
Logic
Application Logic that detects all unit
phases are inactive (Ready or
Inerlocked)
ABORT
Restart Logic
HELD ALARM
Hold
Logic
Application Logic should change the state
to Held after an Alarm is cleared or Reset
LEGEND
HLBL Logic
CONTROL
StrMap File
The StrMap file defines how I/A Series Control Suite integer
values are mapped to I/A Series Batch strings. You can
define more than 32,000 integer-string combinations. You
must make sure that the integer-string combination is
unique. Use the I/A Series Linker to edit the default
configuration in the StrMap file.
Database Synchronization
Assuming that no errors are detected at startup, the
configuration Link database (cfgLinkDB) is synchronized
with the Process Model database. The first time IALink
starts, synchronization can take several minutes. For
subsequent starts, the time is significantly reduced.
During synchronization, each Model tag is retrieved and
verified against the Link database. If a Model tag does not
exist in the Link database, it is added. If a Model tag exists in
the Link database, but is deleted from the Model database,
the corresponding tag also is deleted from the Link database.
Managing Tags
Use the File menu to access the I/A Series Linker system
functions.
Exporting Tags
You can export tags by clicking Export Tags on the File menu.
The Export File Selection dialog box appears.
Enter the name of the file to which the I/A Series Linker
configuration data is to be written. The filename must
include a complete path name. The default location of this
file is the current configuration (config_A) directory. The file
format is comma-separated variable (csv). If the specified file
exists, a message appears, prompting you to overwrite the
file.
The tag list is not filtered. The exported file contains an exact
image of the configuration I/A Series Linker (CfgIALinkDB)
database. You can modify the tag configuration information
as a spreadsheet, text file, and so on.
Note Do not add tags to, or remove tags from, the exported file.
If you delete tags from the file and then import the file, none of
the tags that you deleted from the file are deleted from the
configuration link database. Any changes that you made, however,
result in the modification of the link database. If you add tags to
the file and then perform an import, the additional tags are
ignored since they do not currently exist in the database.
Importing Tags
You can import tags into the Link database. On the File
menu, click Export Tags.
You must specify the name of the file from which the
I/A Series Linker appears import tags. The default location of
this file is the configuration (config_A) folder. The file format
is comma-separated variable (csv).
Range/
Column Identity Length Type Description
Validating Tags
Note Only run the validation of the link database while the Batch
Manager is not running. The validation of a large set of tags may
impact the operation of Batch Manager and cause unexpected
failures.
Discrete OM_BOOL
INTEGER (Bit)
OM_LNG_INT (Bit)
OM_S_PKBOL (Bit)
OM_L_PKBOL (Bit)
Analog INTEGER
FLOAT
OM_LNG_INT
CHARACTER
SHORT INTEGER (8 Bits)
String STRING
INTEGER
OM_LNG_INT
Generating Tags
To open the Generate I/A Series Tags dialog box, click Generate
on the File menu. You can then select from tag types shown
in the following table.
Option Description
Link Generation
I/A Series tags are created by using a UNIT or Transfer
name to create a COMPOUND name, and a PHASE name to
create a BLOCK name. The I/A Series PARAMETER is
created by an automatic process that determines if the Model
tag is a Phase Control or Status, Phase Parameter, Unit
Control, or an Equipment System tag.
If the tag is a Phase Control/Status, Unit Control, or
Equipment System tag, the I/A Series PARAMETER is
retrieved from the Tag Map file. If the tag is a Phase
Parameter tag, the I/A Series Linker automatically
increments the I/A Series PARAMETER value and assigns it
to I/A Series Parameters based on the following rules.
The tag used for a parameter must have a phase name for
automatic generation to function properly.
TagMap
Configuration File
Mapping Tags
Use I/A Series Linker editors to map tags.
Tag Mapping
To edit the Tag Mapping file, click Tag Mapping on the Edit
menu. For more information, see I/A Series Batch
Configuration Procedures.
String Mapping
To edit the String Mapping file, click String Mapping on the
Edit menu. For more information, see I/A Series Batch
Configuration Procedures on page 237.
Option Description
Bit
Physical Model PHASE_EXEC Value Position Comment
Physical
Model PHASE_EXEC Value Bit Position
HOLD UHOLD/PHOLD 1 1
RESTART URESTART/PSTART 2 2
ABORT UABORT/PABORT 3 4
START PSTART 7 64
RESET PRESET 8 128
INDEPENDENT_SEQUENCE
CONSTANTS
#define NUM_ID 0 /* Adjust for additional equipment compounds
#define IDNAM1 " /* Enter Names of equipment compounds */
#define BATCHID SN0010 /* Assign Unit Block Batch ID for LOOPID u
TagMap Phase_Exec
Status/Control Value (bit position from right) (decimal)
Note If you have two batch tags, one analog and one string, and
both are linked to the same I/A Series integer tag, it is possible
for the system to assign improper values to one of the batch tags.
Therefore, when you link multiple batch tags to a single I/A Series
tag, ensure that the data class (Analog, Discrete, String or
Enumeration) is the same.
Chapter 6
Materials Editor
Overview
Use the Materials Editor to:
• Define all of the materials that can be used to create
recipes. You can define ingredients (raw materials),
intermediates (premixes), finished goods, by-products,
and other ingredients.
• Track the location of materials that are stored in units.
This tracking is typically associated with bulk
ingredients and intermediate materials. The InBatch
Management System uses the unit assignments to
determine where an ingredient is located when a batch is
processed. Ingredient locations are independent of
recipes and control system logic. You can move
ingredients to new locations without affecting recipe
processing.
• systems with ingredient usage information and
intermediate and finished goods production.
Related Topics
Managing Materials
You use the following dialog boxes to managing materials:
• Use the Materials Status dialog box to view the name, unit
of measure, total quantity, and characteristics of all
materials defined in the database.
• Use the Materials Editor dialog box to define or edit
materials in the database.
Required or
Item Optional Description
Defining a Material
To define a material
1 Open the Materials Editor dialog box.
2 In the Materials list, click a material type (Ingredient,
Intermediate, Finished Good, By-Product, or Other).
Use the Find button and View Partial List check box to
search all the defined materials in the database. This
technique is useful when you want to enter new materials
that are similar to existing entries.
3 Type entries for Material ID, Name, Description, Unit of
Measure, High Dev, and Low Dev boxes.
4 Click Add.
Note The Materials Editor does not require you to define lot
tracking information for all materials used in production. The
InBatch Management System records the lot tracking information
to the History database if this information is defined, but if the
information is not defined, the InBatch Management System still
processes all batches that use the material.
3 Click Close.
Chapter 7
Train Editor
Overview
A train can contain one or more units, and a unit can be a
part of multiple trains. Trains provide a way to represent
various paths through the process.
The train data is maintained in the Process Model database.
The Train Editor writes to both the configuration Process
Model database and the run-time Process Model database.
Trains can be added at any time during batch system
processing.
Chapter 8
Recipe Editor
Recipe Components
A recipe consists of four parts. They are the Header, the
Equipment Requirements, the Formula, and the Procedure.
Header Component
A recipe header identifies and documents each recipe. The
header consists of the following items:
• Recipe ID
• Recipe Name
• Recipe State
• Recipe Type
• Product ID
• Product Name
• Minimum Batch Size
Formula Component
The formula specifies the inputs (such as raw materials and
ingredients), outputs (such as intermediates, finished goods,
and by-products), and process variables for a recipe. You can
enter input and output quantities as actual values or as
percentage value. Process variable values must be actual
quantities. Default tolerances for ingredients and process
variables automatically appear. However, you can change the
default tolerances for the current recipe or disabled them.
Procedure Component
The procedure defines the sequence of process actions needed
to process one batch of a recipe. You construct a procedure by
using unit procedures, operations, phases, transition logic,
branch objects, and loop objects.
Unit procedures are associated with a process instance and
are defined in the recipe. Operations provide a convenient
way of grouping the phases that are associated with the
recipe. You define operations during recipe construction. You
define phases when you create the process model.
You configure phases with parameters. A parameter is
assigned a value when you enter the recipe formula.
Parameter types are either input, output, or process
variables. When the recipe is processed by the InBatch
Management System, the values assigned to the parameters
are written to the control system.
Unit Procedures
A unit procedure is a process action consisting of one or more
operations. You define unit procedure names when you build
a recipe. You must assign a process instance to each unit
procedure that you create. All process phases associated with
the assigned process instance, and all transfer phases
associated with a transfer instance that has the assigned
process class as either its source or destination class, can be
used to define the unit procedure. Some examples of unit
procedures and associated process class instances are shown
in the following table.
Blend Blenders
Process Reactors
Process ReactorA
Sample Reactors
Sample ReactorA
Manual Addition Mix Tanks
Bulk Addition Bulk Tanks
Liquid Addition Blenders
Discharge Pack Stations
Operations
An operation is an independent process action that identifies
one or more phases. You define an operation by assigning a
name to it. Some examples of operations are:
• Add and Process
• Transfer-MixTank
• Transfer-RcvTank
Phases
A phase is an independent processing action. Automatic and
Semi-Automatic phases are run by the control system using
phase logic. Phase logic is constructed so that it is
automatically configured through phase parameters and
enabled and monitored by the batch management system
when recipes are processed.
Manual and Data phases have no phase logic and are run by
the InBatch Management System. Typically, you use a
Manual phase to instruct an operator to perform a function
such as manually adding an ingredient, or performing a test
sample. You can use a Data phase to read or write values to
the control system or an external device with operator
interaction or formal phase logic.
Some recipe procedures require an operator to acknowledge
certain conditions before a phase can be processed. A recipe
procedure can also require an operator to acknowledge the
completion of a phase. Additionally, a recipe procedure can
require the operator to enter comments before batch
processing can continue. You can configure all these
situations as part of the recipe procedure.
Parameters
You can use formula parameters to further define the
processing of a phase. You define formula parameters in the
Process Model editor.
The three types of parameters are:
• Inputs
• Outputs
• Process variables
Transition Logic
In addition to defining process actions and the sequence of
processing, you can control (enable or inhibit) the processing
of the parts of a recipe procedure based on operator decisions
or process conditions, unit status, and batch information
through the use of transition logic.
Operator Symbol
Negate -
Multiply *
Divide /
Modulus %
Add +
Subtract -
Less Than <
Greater Than >
Less Than or Equal To <=
Greater Than or Equal To >=
Equal To =
Not Equal To <>
And &
Or ¾
Assign :=
Not Not
Overview
The procedure for creating a new recipe procedure requires
the following basic steps:
1 Start the new recipe
2 Enter header information.
3 Define equipment requirements.
4 Define formula inputs.
5 Define formula outputs.
6 Create a procedure.
7 Validate the recipe.
8 Save the recipe.
9 Approve the recipe.
Saving a Recipe
You can save changes to an open recipe. You should save a
new recipe after you create the recipe header.
To save a recipe
1 From the File menu, select Save.
The Save Recipe dialog box appears.
2 If this is the first time that you are saving a recipe, type a
unique identifier in the Recipe ID box (16 characters
maximum).
If you enter a Recipe ID that is not unique, a warning
message prompts you to overwrite the current version.
3 In the Author box, type the name of the recipe author
(30 characters maximum).
All subsequent changes to a recipe require you to enter
an Author.
Tip You can copy a recipe by saving it with a unique Recipe ID.
Task Overview
Assigning equipment requirements to a recipe consists of the
following tasks:
• Assign process classes (Required).
Note Multiple process instances are not required unless you have
a batch processing requirement for the simultaneous allocation of
more than one unit from the same process class.
Minimum Maximum
Process Unit Capacity Capacity
Instances Assigned Selection Attribute Attribute Resultant Unit
Defined Units Mode Value Value Selected
Minimum Maximum
Process Unit Capacity Capacity
Instances Assigned Selection Attribute Attribute Resultant Unit
Defined Units Mode Value Value Selected
Minimum Maximum
Process Unit Capacity Capacity
Instances Assigned Selection Attribute Attribute Resultant Unit
Defined Units Mode Value Value Selected
5 Select the source instance from the list and click OK.
6 Click Destination Instance.
The Destination Instance dialog box appears.
Defining Formulas
You can define the inputs, outputs, and process variables
that are used in the recipe procedure. You define these
parameters using the Formula Inputs Editor dialog box, the
Formula Outputs Editor dialog box, and the Process Variables
dialog box.
Process Overview
You must define a formula to the Materials database before
you develop the recipe. You must select inputs and outputs
for a recipe before they can be used in the procedure. After
being defined, the inputs and outputs are available for
assignment in phases that have input or output parameters
defined. You can make value assignments for each material
from the respective dialog box or locally at each phase.
The Process Variables dialog box shows all the process
variable type parameters that are used in phases in the
recipe procedure. You must edit phases with process variable
parameters in the procedure editor before the phases can
appear in the Process Variables dialog box. You can make
value assignments for each process variable while you
construct the recipe procedure or from the Process Variables
dialog box after you construct the procedure.
Note You can assign the single instance of a material to the input
parameter of more than one phase, and you can assign unique
quantity values to each parameter. However, one material may
not be used as both a percent value and an actual value within
different phases in a recipe. If this is desired, you must add the
material twice to the Formula Inputs Editor Inputs list.
Note The Value must be within the range of the High and Low
Limit values defined for the parameter in the Process Model
database.
Validating a Recipe
You can validate the current recipe. The validation process
verifies the following elements:
• The Process Model database information used in the
recipe exists. This information includes process classes,
phases, parameters, and tags.
• The Material database information used in the recipe
exists.
To validate a recipe
On the File menu, click Validate.
If the validation is successful, Recipe is Valid is shown in
the Validate dialog box. If validation errors exist, the
associated tags appear along with a validation error
message.
Approving a Recipe
You can approve any recipe in the database for production or
for testing.
To approve a recipe
1 From the File menu, select Approvals.
The Approvals dialog box appears.
Note Recipe approvals made on version 8.0 and later show the
time/date stamp of the electronic signature. If recipe approvals
were made on a prior version of the batch software, the
time/date of the electronic signature is not available.
All the recipes in the Recipe database are listed. You can
sort the list by clicking a list heading.
2 Click Open.
3 Double-click the required list item.
To find a recipe
1 On the Recipes - Open dialog box, slick Find.
The Recipe Find dialog box appears.
2 In the Search For text box, type the text that you want to
find.
The space character acts as a wildcard entry. If you type
a space character in the Search For text box, every item in
the list is searched.
3 From the In list, select whether you want to search the
Recipe ID, Recipe Name, State or Type, or all of these
fields.
4 Enable the Case Sensitive check box as required.
5 Click Find Next.
The first Recipe that matches your criteria is highlighted
in the Recipes – Open list.
6 To continue searching and scrolling through the list, click
Find Next.
7 When you identify the recipe that you want, click Open.
Recipe Editor shows the selected recipe.
Deleting a Recipe
You can delete any recipe defined in the database, but you
can delete only one recipe at a time. If you delete the recipe
that is currently open, you must use the File > New command
to clear the deleted recipe from the list.
To delete a recipe
1 On the File menu, click Delete Recipe.
The Recipes – Delete dialog box appears.
To export a recipe
1 On the Import/Export dialog box, type the name of a
directory or select it from the Directories list.
2 From the Recipe IDs list, select the required recipes.
3 Click Export.
This action creates the recipe files (.rcp extension) in the
directory that you selected. If the recipe file exists, the
Duplicate Recipe dialog box appears. It asks if you want to
overwrite the existing file. Acknowledge the prompt as
required. You can also specify a different file name in the
text box.
To import a recipe
1 In the Import/Export dialog box, type the name of a a
directory or select it from the Directories list.
2 From the Recipe IDs list, select the required recipes.
3 Click Import.
This action creates the recipe files (.rcp extension) in the
directory that you selected. If the recipe file exists, the
Duplicate Recipe dialog box appears. It asks if you want to
overwrite the existing file. Acknowledge the prompt as
required. You can also specify a different file name in the
text box.
Note After you import a recipe, you should validate and approve
it using the Recipe Editor.
To synchronize recipes
1 From the file File menu, select Sync and Validate Recipes.
The Sync & Validate Recipe dialog box appears.
Note If you have a Recipe open, you must close it before you can
use the synchronization feature.
Printing Recipes
You can select one or more pre-formatted reports, and then
print the section(s) to a printer or a file. Printed output
supports the use of PostScript formatting for graphical
representation, as well as a standard format that is text-only.
You can optionally print your reports on a grey background.
A PostScript printer is required for printing graphical
recipes. Do not install the PostScript printer on the Batch
Server node. To enable PostScript printing on the InBatch
Development client, copy the PostScript folder and its
content (api.ps, bm.ps and header.ps) to the
…\Wonderware\InBatch folder.
You can preview your selections before actually printing
them.
To preview a recipe
1 On the File menu, click Print Preview.
2 Select one or more reports and then click OK to preview
your selections.
To print a recipe
1 On File menu, click Print. The Print window appears.
Sequence of Phases
The Sequence of Phases pane is used to create a sequence of
phases that are processed within an operation. You define
the phases in the process modeling editor. You can construct
the phase sequence using any of the procedure objects
described later.
Undo Undo the most recent change. Only one level of undo
is available. Undo is applicable only to the creation
and deletion of objects.
Zoom In Enlarge the Unit Procedure pane. There are 10 levels
of magnification available.
Add Operation Loop Enter a loop object into the sequence of operations.
Add Phase Add a phase to the procedure. The phases that are
available are read from the process model. The phase
name and the associated process or transfer instance
name are shown on the object.
Add Phase Enter a transition logic object into the sequence of
Transition phases.
Add Phase Branch Enter a branch object into the sequence of phases.
Add Phase Loop Enter a loop object into the sequence of phases.
The unit procedure is added to the library list along with the
Process Class, Process Instance, the Date the unit procedure
was added, and all phases and configuration information.
Note Unit Procedures in the library can have the same name.
However, each operation is individually maintained. Also, the unit
procedure in the library can be sorted according to each field by
clicking the appropriate column header.
Note Remember that adding unit procedures from the library may
result in the addition of process and transfer instances to the
recipe equipment requirements. You must ensure sure that the
recipe equipment requirement has only the required instances
defined. When the recipe is scheduled as a batch, the train must
have equipment for each instance, regardless of whether the
instance is called in the procedure. If not, you cannot initialize
the batch.
Storing Operations
As you create your recipe you can use either of the following
methods to store the operation in the library.
Loading an Operation
As you create your recipe you can use either of the following
methods to load an operation from the Recipe Editor toolbar.
2 Select the Operation that you want to load from the list.
3 Click OK.
The operation is added to the procedure beneath the
location of the cursor.
Operation Validity
When you attempt to load an operation into a recipe
procedure, the following checks are performed to ensure the
validity of the operation:
• The process class assigned to the operation must exist in
the Equipment Requirements Editor. If the class does not
exist, an error message appears and the load fails.
• If the process class exists, the process instance is
automatically added to the recipe equipment
requirements. You must acknowledge the message for
each instance.
• Materials included in the operation definition can
optionally be added to the recipe formula. You must
acknowledge the message for each material.
To insert an operation
1 On the Operations toolbar, click the Add Operation icon.
The Add Operation dialog box appears.
To insert a phase
1 On the main toolbar, click the Add Phase icon.
The Add Phases dialog box appears.
2 Click the Type arrow and select a phase type from the list.
The Phase Type corresponds to the process class instance
selection made for the corresponding unit procedure. The
six types of available phases are described in the
following table.
Process Lists the process phases defined in the Process Model Editor for the
process instance that was assigned to the operation that is currently
being defined.
Transfer Lists the transfer phases from the Process Model Editor in which
the assigned process instance for this operation is either a source
instance or a destination instance.
Allocate Lists all process instances defined in the recipe Equipment
Process Requirements Editor.
Release Lists all process instances defined in the recipe Equipment
Process Requirements Editor.
Allocate Lists all transfer instances defined in the recipe Equipment
Transfer Requirements Editor.
Release Lists all transfer instances defined in the recipe Equipment
Transfer Requirements Editor.
d Click Change.
When a transition is added, it is automatically
assigned a unique Label (numeric value). The Name is
initially the same as the Label. You can edit these as
required. However, the Label must be unique. If it is
not, a warning message appears.
5 On the Expression tab, click Expression.
The Expression Editor dialog box appears.
Expression Result
Notes:
• Transition Logic is a very powerful aid in developing a
complete batch system. It is intended to be a useful tool
in the coordination and processing of a recipe. It is not
intended to extensively replace the functionality in the
control system such as the PLC.
Branch Objects
You can insert a branch object into the respective procedure
sequence beneath the current location of the cursor.
Use branch objects to process multiple operations or phases
at the same time or to make a choice between running one of
several operation or phases. The number of branch objects
that you can use in a procedure is unlimited.
Note The batch manager does not continue past the Branch
Return object until all transition logic and operations or phases in
all the legs are processed. Therefore, when you construct
procedures, ensure that all of the legs associated with the
Execute All branch can be processed.
Loop Objects
You can insert a loop object into the respective procedure
sequence.
Use loop objects to re-run unit procedures, operations, or
phases that are built inside the object. Any procedure object,
including other loops, can be placed inside a loop structure.
Insert objects within the loop by positioning the cursor on the
top portion of the object and follow the normal insertion
directions described earlier. The bottom portion of the loop
object contains a transition object that you must define with
the Expression Editor. The result of the evaluation of the
expression determines whether the objects contained within
the loop are re-run or not. If the expression is True, loop
processing returns to the top of the loop. If the expression is
False, processing proceeds below the loop.
Note When you cut or copy a branch, ensure that you properly
select the appropriate leg. When you cut or copy a loop, ensure
that you properly select the transition object or exit point of the
loop. Otherwise you may not achieve the intended result.
Note When you paste objects into a branch, ensure that you
properly select the appropriate leg. When you paste objects into
a loop, ensure that you select the appropriate entry or exit point
of the loop before you paste.
Note Use the Undo icon to undo the most recent deletion. Only
one level of undo is provided.
To delete a loop
1 Position the cursor on the Loop Return object of the loop
that is to be deleted.
2 Click the Delete icon.
This example shows the deletion of loop which includes a
Heat phase, an Agitate phase, and two phase transitions.
Operation Properties
Use the Operation Properties dialog box to edit the properties
of any operation object.
Phase Tab
Use the Phase Tab to configure how the phase interacts with
the batch system and operators.
Instructions Tab
Use the Instructions tab to enter specific work instructions
that appear to an operator as part of phase processing.
Parameters Tab
Use the Parameters tab to view and define specific formula
parameter values. These parameters were initially defined
with the Process Model Editor.
There are three types of formula parameters: Input, Output,
and Process Variable. Process Variable parameters require
the assignment of a value if the default value is not
acceptable. In addition, if the phase is used more than once
in the procedure, the parameter name may be changed in
order to associate each parameter with its respective phase.
Input and Output parameters require a material
assignment.
Document Tab
Use the Document tab to assign the file name of a document
or program that you want operators to view and optionally
acknowledge as part of a phase processing. Acknowledgment
can be specified to occur at the start of the phase (On Entry) or
as the last step (On Exit) of the phase. When the phase
processes, Windows launches a program based on the file
extension. For example, if the extension is .html, Windows
could launch a browser.
Note If you are using batch clients in your system, and intend to
run a recipe that uses the Document Viewing feature, make
certain that each client is properly configured to access the
document. One way to ensure this is to place all of your document
files in a folder that is shared for your client systems.
Chapter 9
Overview
The following section provides an overview of the functions of
the Batch Management System.
Scheduling
Batch Scheduler prepares the batches to be processed. You
must manually enter the batch identification, master recipe
identification, quantity to be produced, and train
identification. After you have entered this information, you
can initialize the batch.
Initialization
You must initialize each batch before it can be processed. The
initialization process involves:
• Validating the recipe
History
The Batch Manager captures all batch processing events and
operator activity during the processing of a batch and sends
this information to the historical database.
For more information on the data that is stored and the
format in which it is stored, see Chapter 10, History System.
Only one instance of Batch Manager can be active in your
batch management system. There are no restrictions on the
number of InBatch run-time clients that you can have in a
system. The Batch Manager interacts with several databases
as well as with the clients. The following information
describes the interaction of Batch Manager and the
databases:
• Master recipes are retrieved from the Recipe Database
(RecipeDB) when a batch is initialized.
Identifying Batches
Each batch is identified by a unique three-part hierarchical
name. The highest level is the Campaign ID, followed by the
Lot ID, and finally the Batch ID. An operator must manually
enter the Batch ID. It is not necessary to use all three of the
identification fields. The Campaign ID field is required. The
Lot ID and Batch ID fields are optional.
All historical information about a batch is logged to history
using the Batch ID. If the Batch ID is not unique, duplicates
can exist in the historical database. The Batch Scheduler
verifies only that the Batch ID is unique among the batches
currently in the Schedule dialog box. The Batch Scheduler
does not verify that the identification for a batch is unique
throughout the History database.
Note The Batch Manager must be running before you start Batch
Scheduler.
Defining a Batch
You can define a batch by using the Batch Scheduler dialog
box.
To Define a Batch
1 In the Campaign box, type a campaign ID (16 characters
maximum). This is a required item.
2 In the Lot box, optionally type a lot ID (16 characters
maximum).
3 In the Batch box, optionally type a batch ID
(16 characters maximum).
Status Description
Open The batch has been added to the schedule list, but has not been
initialized.
Ready The batch has been successfully initialized.
Run The batch has been started and is running.
Held The batch has been held.
Done The batch has completed normally.
Aborting The batch is in the process of being aborted.
Aborted The batch has been aborted.
Locking The batch is in the process of aborting phases and entering Jump mode.
Locked The batch has been successfully locked and Jump mode is enabled.
Initializing a Batch
You must initialize a batch before you can run it.
The initialization process performs the following checks to
ensure that the batch can be properly processed:
• Recipe Verification
To undo sorting
1 Open the Batch Scheduler dialog box.
2 On the View menu, click Undo Sorting.
CLB Tab
Use the CLB tab to sort the list of scheduled batches based on
any combination of campaign, lot, and batch.
Recipe Tab
Use the Recipe tab to sort the list of scheduled batches based
on any combination of Recipe IDs, Types, and States.
Train Tab
Use the Train tab to sort the list of scheduled batches based
on one or more train assignments.
Mode/Status Tab
Use the Mode/Status tab to sort the list of scheduled batches
based on any combination of batch processing mode and
status.
Note If you sorted the Batch Schedule list using the Filter option,
batches are processed in the order defined by your sort
preferences. In this case, the Execute in Order option is not
available.
Note If you sorted the Batch Schedule list using the Filter option,
batches are processed in the order defined by your sort
preferences. In this case, the Move options are not available.
• View errors
To view errors
1 Open the Batch Scheduler dialog box.
2 On the View menu, click Errors.
The Errors dialog box appears. It lists all the batch errors
that are associated with the list of scheduled batches.
Note Batch Manager must be running before you start the Batch
Display. The batch system supports the operation of multiple
instances of Batch Display. Therefore, you must use the
Environment Editor to configure multiple instances of Batch
Scheduler.
Batch Identification
Across the top of the Batch main dialog box is the batch
identification information. Included here are the Campaign
ID, Lot ID, Batch ID, Mode, Status and Action.
Phase List
The Phase List contains a dynamic list of active phases. The
equipment allocated for each phase and the status of each
phase is also included in the list.
Question List
The Question List contains a dynamic list of active questions.
Answering a question requires the selection of the question
and the appropriate answer button.
Instruction List
The Instruction List provides a list of instructions associated
with the phase selected in the Phase List.
Color Description
Sequence of Phases
The Sequence of Phases dynamically shows the current
phases running in the selected batch for the selected
operation. The status of each phase in the SFC is represented
with colors.
Color Description
Gray Inactive
Green Active
Red Interlocked, Held, or Waiting for
Operator Action
Yellow Completed
Running a Batch
You can run a scheduled batch from the Batch Display dialog
box. As the batch runs, you can use the dialog box to interact
with the various processing phases.
To start a batch
1 Open the Batch Display dialog box.
2 On the toolbar, click the Schedule icon.
3 The Schedule dialog box opens.
The Schedule dialog box lists all batches that are
scheduled and active in the system.
Any batch with a status of Ready, Run, Held, Done,
Aborting, or Aborted is considered active. The list also
indicates which batch requires action by displaying
double-asterisks (**) in the Action column of the list. To
show information for the selected batch, double-click it.
• SFC toolbar
• Operations
• Phases
Icon Function
Operation pane
Phase pane
• Operations
• Phases
Icon Function
Operation zoom in
Phase zoom in
Controlling Batches
Batches that are initialized have a status of Ready. If a batch
is Ready, you can select it from the Schedules dialog box and
start it with the Batch Start button. Batches that are running
have a status of Run. If a batch has a status of Run, the batch
can be put in Held status. If a batch has a status of Held, the
batch can be Restarted or Aborted.
Selecting Equipment
You can manually select equipment for a batch. The
Equipment Selection dialog box contains a list of possible
units that you can allocate for a particular recipe instance.
Whenever Manual Unit Selection is configured for a process
instance in the recipe Equipment Requirements Editor, you
must select the equipment that is to be allocated and used by
the current batch.
The Equipment Selection dialog box is dynamic. The current
status of units that are available for selection appears in the
dialog box. If the status of any equipment changes while the
dialog box is open, the status list updates accordingly. The
status of units shown in the Equipment Selection dialog box
corresponds to those statuses defined in the process model.
As long as the new unit status represents an available
status, the unit remains in the list.
Phase
Status Description Action
Wait The phase is waiting for operator action. The Acknowledge or edit
message line indicates whether a comment the comment.
or an acknowledgement is required.
Wait The phase is currently running. You can run Acknowledge the
the phase after acknowledging the message. Unexpected Status
Batch Manager waits until the phase is dialog box.
Ready.
Run The phase is running. Phase Hold
Held The phase is in Hold status; You can restart Phase Restart or
or abort the phase. Phase Abort
Done Phase processing is complete. N/A
Interlocked Interlocks are preventing the phase from Select the Interlocks
running. button.
Aborted The phase has been Aborted. N/A
Answering Questions
Transition objects that have been configured in the recipe to
ask a question of the operator are in the Questions List box.
The operator must select the question that is to be answered
and click Yes.
Depending on the recipe, there may only be one question or
there may be several. For an Execute All branch, all the
questions must be answered. If the branch is an Execute
One, then only one question must be answered.
If the question applies to a loop object, then the question is a
Yes or No question. If the answer is Yes, then the loop back is
processed.
Acknowledging Phases
Any phase in the recipe that has been configured with an
Acknowledge On Entry or Acknowledge On Exit option, as
well as all semi-automatic phases require the operator to
acknowledge the phase when processed. A message appears
in the message box when an acknowledge is required. Click
the Acknowledge button when required.
• Unit Focus
• Startup View
• Startup Size
• Startup Location
• Location to Toolbars
Parameter Description
These error messages can occur when you start Batch View
or close Batch View and Batch Scheduler from the command
line and define or re-define unit filters. After you see these
messages, if you attempt to shut down BatchMngr (from the
Runtime Application Display), BatchMngr does not stop; it
produces the following error message:
Halt all Batch Clients...
• Manual
Batch Processing Modes
The three modes of batch processing are:
• Automatic
• Semi-Automatic
• Manual
Modes for Selecting Units
The two methods for selecting units for a batch are:
• Automatic
• Manual
Phase Categories
Thee are two categories of phases are:
• Transfer
• Process
Phase Types
The three types of phases are:
• Automatic
• Semi-Automatic
• Manual
Allocating Equipment
To run any phase as part of a batch, equipment must be
allocated to the batch. If suitable equipment had been
previously allocated to the batch, that equipment is used. If
equipment has was not been previously allocated, the
InBatch Management System must allocate suitable
equipment to the batch before it can proceed with phase
processing. The three approaches to allocating equipment for
a batch are described in the information that follows.
Starting a Batch
When an operator selects the Batch Start button, the recipe
procedure begins processing. Equipment must be allocated to
run phases. The allocation takes place according to the rules
that you defined in the allocation section. If the required
equipment cannot be allocated, the phases go to the Wait
status. While in Wait status, the availability of the
equipment is continually monitored. As soon as equipment is
available, it is allocated to the batch, and the phase starts.
Only the equipment in the assigned train is available to
Batch Manager for allocation.
After the correct equipment is allocated, the status of the
phase to be run is evaluated. If the phase status is Ready,
Batch Manager downloads the values of the formula
parameters to the control system and sets the phase Start
tag. If the phase status is Interlocked, Batch Manager
monitors the phase until the status becomes Ready before
proceeding. If the phase status is Held or Run, an
Unexpected Status error message appears. An operator must
acknowledge the error message, and Batch Manager waits
for the phase status to become Ready before proceeding. If
the phase status is Done or Aborted, the phase Reset tag is
set by Batch Manager, and Batch Manager waits for the
Ready status before proceeding.
If the IBCli service encounters a failure while attempting to
read or write to a tag in the control system, the batch that is
associated with the failure is placed on hold by the Batch
Manager and an error message appears. Examples of
conditions that can cause tag read and write failures include
bad I/O points or the unintentional deletion of a block
parameter in the control system. When failures occur, an
operator must take the necessary action to correct the
problem and then initiate a batch Restart to resume
operation. If the failure cannot be resolved but the operator
wants to batch processing to continue, the phase associated
with the failed tag can be Aborted by the operator, and then a
batch Restart can be initiated to resume batch processing.
Holding a Batch
When an operator selects the Batch Hold button, Batch
Manager puts the batch in Held status. The actions taken in
response to a batch Hold depend on how Batch Manager is
configured in the Environment Editor. If the configuration
uses the defaults (that is without any application parameters
in the Environment Editor), when the Hold command is
initiated, the batch status changes to Held and the Unit Hold
tag for each unit allocated to the batch is set. It is the
responsibility of the control system logic to alter the status of
the phases associated with the units. Typically, the phases
are put in the Held status. However, the results of a batch
Hold can be unique for each phase.
Restarting a Batch
When an operator selects the Batch Restart button, Batch
Manager restarts the batch. The actions taken in response to
a batch Restart depend on the way in which Batch Manager
is configured in the Environment Editor. If the configuration
uses the defaults (that is without any application parameters
in the Environment Editor), when the Restart action is
initiated, the batch status changes to Run and the Unit
Restart tag for each unit allocated to the batch is set. It is the
responsibility of the control system logic to alter the status of
the phases associated with the units. Typically, the phases
are put in the Run status. However, the results of a batch
restart can be unique for each phase.
If Batch Manager is started with the Phase/Batch Status
application parameter defined in the Environment Editor,
Batch Manager manages all phase restart activity. When a
Batch Restart is triggered, the batch status changes to Run
and the Unit Restart tag for each allocated unit is set. In
addition, a phase restart signal is sent to any phase in the
batch that has a status of Held. However, unlike with Hold
commands, an individual phase restart does not cause the
batch and all other phases to restart.
Aborting a Batch
When an operator selects the Batch Abort button, Batch
Manager cancels the batch. The actions taken in response to
a Batch Abort depend on the way in which Batch Manager is
configured in the Environment Editor. If the configuration
uses the defaults (that is without any application parameters
in the Environment Editor), when the Abort is initiated, the
batch status changes to Aborting and the Unit Abort tag for
each unit allocated to the batch is set. It is the responsibility
of the control system logic to alter the status of the phases
associated with the units. Typically, the phases are put in the
Aborted status. However, the results of a batch abort can be
unique for each phase. After all phases have completed or
aborted, the batch status changes to Aborted. The batch
status remains Aborting as long as phases are active.
Automatic to Semi-Automatic
Operation continues normally except that any new phase
requires an operator to acknowledge the start of the phase.
You can configure Batch Manager to switch from Automatic
to Semi-Automatic after a phase is aborted. The batch then
continues to run in Semi-Automatic mode. To enable this
capability, you must use Environment Editor to assign the
Semi-Auto On Abort parameter to Batch Manager. If you
enable this feature, both the phase abort and the mode
change from Automatic to Semi-Automatic are logged to
history.
For more information on configuring the Environment
Editor, see Chapter 2, Environment Management System.
Automatic to Manual
Any active phases continue to run to completion. Batch
Manager monitors these phases and resets the phases when
they are done. No new phases are run. Batch Manager
maintains its position in the recipe procedure, and the
operator can manually run any of the phases associated with
allocated equipment.
Semi-Automatic to Automatic
Any phases that are running continue to run. Any phase
waiting for an operator acknowledgment or any new phase
encountered automatically starts. This automatic startup
capability assumes that the phase is not configured for
Acknowledge on Entry in the recipe procedure. If this is the
case, the acknowledgement is still required.
Manual to Automatic
Recipe processing begins from the point where Manual mode
was started. Phases start as configured in the recipe
procedure. Any phases started in Manual mode complete and
are reset by Batch Manager. Any equipment that was
manually allocated remains allocated until a release phase
for the equipment is encountered or the batch completes.
Manual to Semi-Automatic
Recipe processing begins from the point where Manual mode
was started. Phases require an acknowledgement before they
can be started. Any phases started in Manual mode complete
and are reset by Batch Manager. Any equipment that was
manually allocated remains allocated until a Release phase
for the equipment is encountered or the batch completes.
Note Use caution when you enable the Continue Mode property
for any phase within a loop object. Because of the risk of
re-running an active phase, batch processing does not proceed
into the loop in which a phase with the continue mode property
enabled is active. As soon as the phase completes, batch
processing proceeds into the loop.
Triggering Reports
Reports can be linked to any phase in a recipe procedure. The
report is triggered when the phase is complete. Also, if an
End of Batch report was defined, Batch Manager signals
Wonderware Information Server after the batch is
completed. Batch Manager passes the name of the report, the
Campaign ID, Lot ID, and Batch ID.
Error: Cannot access transfer “transfer name”! - Hold Batch; Correct Problem;
Restart.
Reason #1: A connection associated with the transfer cannot be found in
the train.
Corrective Action: Put the batch in Hold. Modify the train to include the
appropriate unit that would support the transfer. Restart the batch.
Reason #2: The batch is assigned to a train that cannot properly run the
recipe.
Corrective Action: Make sure the batch is assigned to a train that can
properly run the recipe.
Reason #3: The connection has not been entered in the process model.
Corrective Action: Abort the batch. Stop processing of the Batch
Management System. Add and assign the connection to the appropriated
transfer class using the Process Model Editor. Restart the Batch
Management System.
Error: Cannot access process “process name”! - Hold Batch; Correct Problem;
Restart.
Reason: A unit associated with the process cannot be found in the train.
The unit needed for the process was most likely deleted from the train after
the batch was started.
Corrective Action: Put the batch in Hold. Modify the train to include the
appropriate unit that would support the transfer. Restart the batch.
Error: Phase param tag read timeout (Note: Error is reported in the Batch Logger)
Timeout exceeded allowable value! for param tag read at end of phase - only
when using remote I/O server.
Reason: MemTagMngr is local; therefore, the memory tag parameter uses
the local server’s time. The phase done tag is a remote tag and may have a
different time (perhaps several minutes or more). When BatchMngr
compares the time difference between the two, it writes the MemTag time
stamp to match that of the remote tag time stamp.
Corrective Action: Synchronize the system time settings on the server
and the remote system.
Tag Attributes:
Field Value
When you run a phantom batch, all the phases for any
allocated units can be processed. For phases to run, you must
manually allocate units from the Equipment Allocation dialog
box. A phantom batch has no associated history of activity.
You remove a phantom batch from the schedule by putting
the batch on Hold and then selecting Abort.
Chapter 10
History System
• Process data
• Production information
• Material usage
• Operator comments
• Operator actions
• Equipment used
Overview
Historical batch information is stored on an InBatch history
server. The History server uses Microsoft SQL Server and is
provides all the historical database requirements for the
batch system. At the InBatch Server, a message queue
guarantees that data is transmitted to the History server.
This guaranteed delivery is accomplished by maintaining the
data locally in the case of a disconnection and then
retransmitting the data when the connection is restored. All
data is time stamped by the InBatch server so that if data
communications to the History server are interrupted, the
time and date stamps are still valid. Data transmission to the
History server is managed by the History Queue Manager
(HistQMngr), which runs on the InBatch server.
This documentation does not describe how to use Microsoft
SQL Server. However, you may want to use Microsoft SQL
Server tools to maintain and view information about the
historical databases. For more information on using
Microsoft SQL Server, see your Microsoft documentation.
For more information on maintaining your History
databases, including history archiving procedures, see
Chapter 22, System Administration.
For more information regarding the History server and how
to use the reporting system, see Chapter 11, Reporting
System.
ArchiveHistory
The ArchiveHistory table provides a history of archive
activity.
Archive_ID No int 4
Archive_Device Yes varchar 30
Archive_Filename Yes varchar 254
Archive_IND Yes char 1
Description Yes varchar 512
HistoryDataEnd_DT Yes datetime 8
HistoryDataStart_DT Yes datetime 8
Job_Name No varchar 8
JobEnd_DT Yes datetime 8
JobStart_DT No datetime 8
Purge_IND Yes char 1
Restore_IND Yes char 1
Status_CD Yes char 1
Status_Description Yes varchar 256
Target_DB Yes varchar 30
AuditEvent
The AuditEvent table contains one record for every security
system event that is generated during batch processing.
App_Name No varchar 16
Audit_Event_ID No uniqueidentifier 16
DateTime No datetime 8
Func_Lvl No varchar 8
Func_Name No varchar 16
Op_Station No varchar 16
Reason No varchar 4
Recipe_ID No varchar 16
User_Name No varchar 64
PassFail No smallint 2
User_ID No varchar 64
BatchAdmin
The BatchAdmin table contains records for archive tasks
defined in the history archive. The history archive controls
the data in this table.
Archive_Desc No varchar 64
Archive_Device No varchar 30
Archive_Filename No varchar 254
Archive_IND No char 1
BatchAdmin_ID No char 10
Completion_CD No char 1
Completion_DT Yes datetime 8
Create_DT No datetime 8
End_DT No datetime 8
Purge_IND No char 1
Restore_IND No char 1
Schedule_DT No datetime 8
Scheduled_by_User No varchar 64
Start_DT No datetime 8
Status_CD No char 1
Status_Desc No varchar 255
Target_DB No varchar 30
BatchDetail
The BatchDetail table contains a record for every event in
the processing of a batch. Events are defined using an action
code. The action codes are defined in the CodeTable table.
Batch Manager controls the data in this table.
Action_CD No smallint 2
Batch_Log_ID No char 10
CheckBy_User_ID No varchar 64
DateTime No datetime 8
DoneBy_User_ID No varchar 64
Operation_ID No varchar 16
Phase_ID No varchar 16
Phase_Instance_ID No char 10
PhaseLabel No varchar 8
UnitOrConnection No varchar 16
UnitProcedure_ID No varchar 16
BatchIdLog
The BatchIdLog table contains a record for each batch
produced. Batch Manager controls the data in this table.
Archive_CD No char 1
Batch_ID No varchar 16
Batch_Log_ID No char 10
Batch_Size No int 4
Campaign_ID No varchar 16
Log_Close_DT Yes datetime 8
Log_Open_DT No datetime 8
Lot_ID No varchar 16
Product_ID No varchar 16
Product_Name No varchar 16
Recipe_Approval_CD No smallint 2
Recipe_ID No varchar 16
Recipe_Name No varchar 16
Recipe_State No varchar 16
Recipe_Type No varchar 16
Recipe_Version No varchar 8
Train_ID No varchar 16
BatchQuestion
The BatchQuestion table contains a record for every question
shown to and answered by the operator during the processing
of a batch. Batch Manager controls the data in this table.
Answer No smallint 2
Batch_Log_ID No char 10
CheckBy_User_ID No varchar 64
DateTime No datetime 8
DoneBy_User_ID No varchar 64
Question No varchar 40
CodeTable
The CodeTable contains the codes and descriptions that are
used as part of other history tables. This table is a
permanent part of the History database and is not modified
during batch processing.
Code No smallint 2
Description No varchar 64
Code Description
Code Description
Code Description
Config
The Config table is used by the reporting system to hold
configuration settings.
DocViewEvent
The DocViewEvent table contains one record for each event
that is generated when an operator must view and
acknowledge an external document.
Batch_Log_ID No char 10
CheckBy_User_ID No varchar 64
DateTime No datetime 8
Doc_Desc No varchar 120
Doc_Loc No varchar 254
DoneBy_User_ID No varchar 64
Operation_ID No varchar 16
Phase_ID No varchar 16
Phase_Instance_ID No char 10
Phase_Label No varchar 8
UnitORConnection_ID No varchar 16
UnitProcedure_ID No varchar 16
EquipStatus
The EquipStatus table contains a record for every unit or
segment status transition. Batch Manager controls the data
in this table.
CheckBy_User_ID No varchar 64
DateTime No datetime 8
DoneBy_User_ID No varchar 64
ESField1 No varchar 16
ESField2 No varchar 16
ESField3 No varchar 16
ESField4 No varchar 16
ESField5 No varchar 16
ESField6 No varchar 16
ESField7 No varchar 16
ESField8 No varchar 16
Last_Recipe_ID No varchar 16
New_Status No varchar 16
Old_Status No varchar 16
Operator_Comment No varchar 40
Recipe_ID No varchar 16
UnitOrSegment No varchar 16
ErrorQ
The ErrorQ table is used by the History Queue.
Event
The Event table stores all InTouch alarms and events that
the batch system can associate to specific batches.
Alarm_State No varchar 10
Alarm_Type No varchar 4
Batch_Log_ID No char 10
DateTime No datetime 8
Engineering_Units No varchar 16
Event_CD No char 3
Event_Comment No varchar 50
Group_Name No varchar 32
Operator_ID No varchar 16
Priority No smallint 2
Tag_Name No varchar 84
Tag_Value No varchar 16
Tag_Value_Limit No varchar 16
UnitOrConnection No varchar 16
MaterialChar
The MaterialChar table contains a record for every
characteristic defined for a material used in a batch. Batch
Manager controls the data in this table.
Batch_Log_ID No char 10
Material_Char_Value No varchar 16
Material_Characteric No varchar 16
Material_ID No varchar 16
Material_Instance_ID No varchar 16
MaterialInput
The MaterialInput table contains a record for every material
consumed in a batch. Batch Manager controls the data in this
table.
Actual_Qty No float 8
Batch_Log_ID No char 10
DateTime No datetime 8
Material_ID No varchar 16
Material_Instance_ID No varchar 16
Material_Name No varchar 40
Material_Parameter No varchar 16
Mtrl_Batch_ID No varchar 16
Mtrl_Campaign_ID No varchar 16
Mtrl_Lot_ID No varchar 16
Operation_ID No varchar 16
Phase_ID No varchar 16
Phase_Instance_ID No char 10
Phase_Label No varchar 8
Target_Qty No float 8
UnitOfMeasure No varchar 12
UnitOrConnection No varchar 16
UnitProcedure_ID No varchar 16
MaterialInputChange
The MaterialInputChange table contains a record for every
quantity change made by an operator for a material
consumed in a batch. Batch Manager controls the data in this
table.
Batch_Log_ID No char 10
CheckBy_User_ID No varchar 64
DateTime No datetime 8
DoneBy_User_ID No varchar 64
Material_ID No varchar 16
Material_Parameter No varchar 16
New_Target_Qty No float 8
Old_Target_Qty No float 8
Operation_ID No varchar 16
Phase_ID No varchar 16
Phase_Instance_ID varchar 16
Phase_Label No varchar 8
UnitOrConnection No varchar 16
UnitProcedure_ID No varchar 16
MaterialOutput
The MaterialOutput table contains a record for every
material produced in a batch. Batch Manager controls the
data in this table.
Actual_Qty No float 8
Batch_Log_ID No char 10
DateTime No datetime 8
Material_ID No varchar 16
Material_Name No varchar 40
Material_Parameter No varchar 16
Operation_ID No varchar 16
Phase_ID No varchar 16
Phase_Instance_ID No char 10
Phase_Label No varchar 8
Target_Qty No float 8
UnitOfMeasure No varchar 12
UnitOrConnection No varchar 16
UnitProcedure_ID No varchar 16
OperatorComment
The OperatorComment table contains a group of one or more
records for every comment entered by an operator during a
batch. Each record contains a portion (40 characters) of the
comment. The SeqNum field defines the comment sequence.
Batch Manager controls the data in this table.
Batch_Log_ID No char 10
CheckBy_User_ID No varchar 64
DateTime No datetime 8
DoneBy_User_ID No varchar 64
Operation_ID No varchar 16
Operator_Comment No varchar 40
Phase_ID No varchar 16
Phase_Instance_ID No char 10
Phase_Label No varchar 8
SeqNum No int 4
UnitOrConnection No varchar 16
UnitProcedure_ID No varchar 16
PhaseInstruction
The PhaseInstruction table contains a group of one or more
records for every phase instruction presented to an operator
during a batch. Each record contains a portion
(40 characters) of the instruction. The SeqNum field defines
the instruction sequence. Batch Manager controls the data in
this table.
Batch_Log_ID No char 10
DateTime No datetime 8
Instruction No varchar 40
Operation_ID No varchar 16
Phase_ID No varchar 16
Phase_Instance_ID No char 10
Phase_Label No varchar 8
SeqNum No int 4
UnitOrConnection No varchar 16
UnitProcedure_ID No varchar 16
ProcessLog
The ProcessLog table contains a record for every data sample
logged. Process Log Manager controls the data in this table.
Batch_Log_ID No char 10
Data_Class No varchar 12
DateTime No datetime 4
Tag_Name N varchar 84
Tag_Value No varchar 16
UnitOrConnection No varchar 16
ProcessVar
The ProcessVar table contains a record for the value of every
phase process variable parameter associated with a batch.
Batch Manager controls the data in this table.
Actual_Value No varchar 80
Batch_Log_ID No char 10
DateTime No datetime 8
Operation_ID No varchar 16
Parameter_ID No varchar 16
Phase_ID No varchar 16
Phase_Instance_ID No char 10
Phase_Label No varchar 9
Target_Value No varchar 81
UnitOfMeasure No varchar 16
UnitOrConnection No varchar 16
UnitProcedure_ID No varchar 16
ProcessVarChange
The ProcessVarChange table contains a record for every
change made to a phase process variable parameter by an
operator during a batch. Batch Manager controls the data in
this table.
Batch_Log_ID No char 10
CheckBy_User_ID No varchar 64
DateTime No datetime 8
DoneBy_User_ID No varchar 64
New_Target_Value No varchar 80
Old_Target_Value No varchar 80
Operation_ID No varchar 16
Parameter_ID No varchar 16
Phase_ID No varchar 16
Phase_Instance_ID No varchar 10
Phase_Label No char 8
UnitOfMeasure No varchar 16
UnitOrConnection No varchar 16
UnitProcedure_ID No varchar 16
ReportDef
The ReportDef table contains the configuration data of the
reports.
ID No int 4
AutoBatchEnd No int 4
CrystalRpt No varchar 260
Description No varchar 120
Name No varchar 32
OutputPath Yes varchar 260
OutputToFile No int 4
OutputToPrinter No int 4
OutputType Yes int 4
Printer Yes varchar 260
ReportLog
The ReportLog table contains the logged information of the
generated reports.
ID No int 4
Filename No varchar 260
ReportName No varchar 32
TimeStamp No datetime 8
ReportOutputTypes
The ReportOutputTypes table contains the available output
formats for the reports.
FilenameExtension No varchar 10
MimeType Yes varchar 50
Name No varchar 32
Value No int 4
ReportPrinters
The ReportPrinters table contains information about the
printers that are configured for reports.
ReportQueue
The ReportQueue table contains the scheduled reports that
are waiting to be processed.
ID No uniqueidentifier 16
BeingProcessed No bit 1
FilenamePrefix No varchar 128
Name No varchar 32
NumAttempts No int 4
ReportQueueParams
The ReportQueueParams table contains the parameters of
the scheduled reports.
ReportQID No uniqueidentifier 16
Name No varchar 32
Value No varchar 8000
ReportViewers
The ReportViewers table contains the types of viewers
available for viewing reports.
Name No varchar 50
Transition
The Transition table contains a record for every transition
event. The events are Start Transition, Transition False,
Transition True, and Transition Forced. Batch Manager
controls the data in this table.
Batch_Log_ID No char 10
DateTime No datetime 8
Operation_ID No varchar 16
Transition_Desc No varchar 120
Transition_ID No varchar 16
Transition_Instance_ID No char 10
Transition_Label No varchar 8
UnitProcedure_ID No varchar 16
TransitionExpression
The TransitionExpression table contains a record for each
Transition Expression that is encountered during batch
processing.
Batch_Log_ID No char 10
DateTime No datetime 8
Expression_Text No varchar 40
Operation_ID No varchar 16
SeqNum No int 4
Transition_ID No varchar 16
Transition_Instance_ID No char 10
Transition_Label No varchar 8
UnitProcedure_ID No varchar 16
UserProfile
The UserProfile table contains records that describe a user’s
identification.
Effective_TS No datetime 8
User_ID No varchar 64
User_Name No varchar 64
AlarmComment
The AlarmComment table contains one record for each
I/A Series Alarm Comment entered during batch processing.
Allow
Field Null Type Length
Batch_Log_ID No char 10
comment No varchar 256
DateTime No datetime 8
EnteredBy_User_ID No varchar 16
messageId No uniqueidentifier 16
SeqNum No int 4
AnalogAlarm
The AnalogAlarm table contains one record for each
I/A Series Analog Alarm generated during batch processing.
ack_state No char 1
alarm_limit No float 8
alarmtype_msg No varchar 8
Batch_Log_ID No char 10
block_desc No varchar 33
block_name No varchar 15
compound_name No varchar 15
date_time No datetime 8
DateTime No datetime 8
in_out_txt No varchar 33
inhprt No char 1
letterbug No varchar 8
loopId No varchar 33
messageId No uniqueidentifier 16
messageTxtType No varchar 30
messg_text No varchar 81
Messg_Type No int 4
monotonictime No int 4
opr_err No int 4
parametername No varchar 8
pnt_no No int 4
point_name No varchar 15
priority No int 4
real_value No float 8
sbxno No char 1
sct_no No int 4
state_text No varchar 33
stepno No int 4
subrno No char 1
symbolicname No varchar 64
tenths No char 1
unit_txt No varchar 33
valid_time No int 4
BooleanAlarm
The BooleanAlarm table contains one record for each
I/A Series Boolean Alarm generated during batch processing.
Allow
Field Null Type Length
ack_state No char 1
alarm_limit No float 8
alarmtype_msg No varchar 8
Batch_Log_ID No char 10
block_desc No varchar 33
block_name No varchar 15
compound_name No varchar 15
date_time No datetime 8
DateTime No datetime 8
in_out_txt No varchar 33
inhprt No char 1
letterbug No varchar 8
loopId No varchar 33
messageId No uniqueidentifier 16
messageTxtType No varchar 30
messg_text No varchar 81
Messg_type No int 4
monotonictime No int 4
opr_err No int 4
parametername No varchar 8
pnt_no No int 4
point_name No varchar 15
priority No int 4
real_value No float 8
sbxno No char 1
sct_no No int 4
state_text No varchar 33
Allow
Field Null Type Length
stepno No int 4
subrno No char 1
symbolicName No varchar 64
tenths No char 1
unit_txt No varchar 33
valid_time No int 4
CodeTable
The following items apply only to I/A Series.
Code Description
NonBatchOperatorActions
The NonBatchOperatorActions table contains a group of one
or more records for every operator action that is not part of a
batch. Event Manager controls the data in this table.
Allow
Field Null Type Length
ActionType No tinyint 1
block_name No varchar 15
compound_name No varchar 15
DateTime No datetime 8
Description No varchar 64
Messg_Type No int 4
[Pad] No tinyint 1
parametername No varchar 8
Station No varchar 8
OperatorActions
The OperatorActions table contains a group of one or more
records for every action of an operator during a batch. Batch
Manager controls the data in this table.
ActionType No tinyint 1
Batch_Log_ID No char 10
block_name No varchar 15
compound_name No varchar 15
DateTime No datetime 8
Description No varchar 64
Messg_Type No int 4
[Pad] No tinyint 1
parametername No varchar 8
Station No varchar 8
SequenceBlock
The SequenceBlock table contains a record for each
I/A Series Sequence Block associated with a batch.
Allow
Field Null Type Length
ack_state No char 1
alarm_limit No float 8
alarmtype_msg No varchar 8
Batch_Log_ID No char 10
block_desc No varchar 33
block_name No varchar 15
compound_name No varchar 15
date_time No datetime 8
DateTime No datetime 8
in_out_txt No varchar 33
inhprt No char 1
letterbug No varchar 8
Allow
Field Null Type Length
loopId No varchar 33
messageId No uniqueidentifier 16
messageTxtType No varchar 30
messg_text No varchar 81
Messg_Type No int 4
monotonictime No int 4
opr_err No int 4
parametername No varchar 8
pnt_no No int 4
point_name No varchar 15
priority No int 4
real_value No float 8
sbxno No char 1
sct_no No int 4
state_text No varchar 33
stepno No int 4
subrno No char 1
symbolicName No varchar 64
tenths No char 1
unit_txt No varchar 33
valid_time No int 4
Chapter 11
Reporting System
InBatch Server
The InBatch Server contains one reporting system
component, the History Queue Manager. The History Queue
Manager is installed with the InBatch Server.
History Queue
The History Queue is a first-in-first-out (FIFO) queue which
is located on the InBatch History Server that is responsible
for transferring all historical data from the Batch Manager
on the InBatch Server to the Batch History database. The
History Queue is also responsible for notifying the report
queue of End-of-Batch and End-of-Phase events which
trigger reports.
Report Queue
The Report Queue is a First-In-First-Out (FIFO) queue
located on the InBatch History Server that handles all
requests for reporting activity. The queue also contains all
parameter data necessary for the processing of the report.
Report Client
The report client is any PC that has Microsoft Internet
Explorer. Based on your Wonderware Information Server
permissions, you can configure, schedule, and view reports.
You can also run reports on demand.
• Schedule reports
• View reports
Note InBatch 8.1 and later does not support expression triggered
reports. If you were using expression triggered reports in a
previous version, they are converted when you upgrade the
databases and appear in the list of configured reports on the
Configuration web page. The report names exist in the ReportDef
table in batch history. However, these reports are not generated.
Batch Analog Alarms Provides a listing of analog alarms issued for a batch.
Alarm comments that were entered for an analog alarm
with the Alarm Comment application are also included
in the report.
Batch Boolean Alarms Provides a listing of Boolean alarms issued for a batch.
Alarm comments that were entered for a Boolean alarm
with the Alarm Comment application are also included
in the report.
Non-Batch Operator Provides a summary of all non-batch-related operator
Action Journal actions that occurred during a batch.
Operator Action Journal Provides a summary of all operator actions during a
batch.
Sequence Block Alarms Provides a listing of sequence block messages issued for
a batch. Comments that were entered for each sequence
with the Alarm Comment application are also included
in the report.
Configuring Reports
You can add, view, edit, and delete report configurations to
the reporting system.
You must have administrative rights to be able to access this
capability. For more information about Wonderware
Information Server security, see the Wonderware
Information Server Administration Guide.
2 Click Configuration.
In the right pane, the Configuration page opens.
You can see a list of configured reports.
The following figure is an example.
Important The folder for the file must already exist and be
shared with full permissions. If you do not share the folder, the
reports are not saved to the specified location.
2 Click Schedule.
In the right pane, all scheduled reports appear.
To view a report
1 Click the View button associated with the report that you
want to view.
• Zoom in or out.
• XML
• CSV (comma delimited)
• TIFF (graphic image)
• Acrobat (PDF)
• Web archive (HTML)
• Excel
Chapter 12
Process Logging
Overview
You can create Process Log configurations and store them in
the Process Log database. A Process Log configuration
consists of one or more groups of tags, with each group
having its own logging criteria. The criteria control how the
groups of tags and their respective values are sampled and
logged at run time by the Process Log Manager.
Real-Time
Data
Process Log
Database
Printer Historical
Database
Log Trigger
The Log Trigger defines the conditions that initiate logging
for the group. The Log Trigger options are Always and On
Event.
• If you select Always, logging begins as soon as the
run-time Process Log Manager starts.
• If you select On Event, a True or False Boolean expression
is evaluated. If the result of the expression is True,
logging occurs.
Log Interval
The Log Interval defines the frequency of sampling for each
tag in the group. The interval options are On Event, 2
seconds, 5 seconds, 10 seconds, 30 seconds, 1 minute,
5 minutes, 15 minutes, 30 minutes, 1 hour, 2 hours, 4 hours,
and 24 hours. If you select On Event, you must define a True
or False Boolean expression. Use the Expression Editor to
create a True or False Boolean expression using any tag in
the process model. Each time the expression is true, the data
values for each of the tags in the group are logged.
For more information on building expressions, see Chapter
14, Expression Editor.
Selecting Tags
Tags that are logged as part of the group are assigned from
the Tag Selection dialog box, which is accessed from the
Process Logger Group Editor. You can select as many tags as
you want from all analog and discrete tags in the process
model database.
To select tags
1 Open the Process Logger Group Editor dialog box.
2 Click Select Tags.
The Tag Selection dialog box appears.
4 Click OK.
The tags that you selected appear in the Tags area of the
Process Logger Group Editor dialog box.
5 Click Close.
To open a configuration
1 Open the Process Log Editor dialog box.
2 On the File menu, click Open.
The Configurations dialog box appears.
To delete a configuration
1 Open the Process Log Editor dialog box.
2 On the File menu, click Delete.
The Delete dialog box appears.
3 Select a configuration.
4 Click OK.
To print a configuration
1 Open the Process Log Editor dialog box.
2 On the File menu, click Print.
The Print dialog box appears.
Chapter 13
Security System
Overview
All applications use the Security API when security
clearance is required. The API provides three modes of
operation: Standard, OS, or ArchestrA. When needed, the
application prompts the operators for their ID and password.
In OS mode, a domain or local machine name is also
required. The information is compiled into a security request
message and sent to either the Windows Security API or the
Security Manager depending on which mode is active. In OS
mode, a temporary logon using the passed User ID results in
either pass or fail access. If access is permitted, a list of all
groups that contain the User ID is returned. This
information is then sent to the Security Manager along with
the application or function name, the operator station from
where the request was made, and if applicable, the recipe
identification code. The Security Manager compares the
security request with the information defined in the security
database and returns an OK or Not OK result to the
application making the request. The application acts on the
result accordingly.
In Standard mode, the Windows security check is not
performed. Instead, the information is sent directly to the
Security Manager.
In ArchestrA mode, InBatch authenticates users against the
ArchestrA security system. For details, see the Working with
Security chapter in the Application Server User’s Guide.
Security Modes
You can select from the following three modes of security:
• Standard
• Operating System
• ArchestrA
Note When a security role is deleted, all users that are assigned
that level have their security role assignment deleted. If a user
does not have a security role, the user cannot obtain security
clearance.
Note Group accounts are available only if you are using Operating
System security or if you have configured ArchestrA security to be
OS group based rather than OS user based.
To delete a user
1 Open the User Accounts Editor.
2 Select a user.
3 Click Delete.
4 When a message appears, click Yes.
5 Click Close.
5 Click Query.
• If you selected Users, all available users appear in the
list with a blue icon beside the user name.
• If you selected Groups, all available groups appear in
the list with a red icon beside the group name.
• If you selected both Users and Groups, users are listed
first, followed by groups.
The following figure shows a list of both users and
groups.
• OS Users
• OS Groups
Note To be able to browse the Galaxy name space, the IDE must
be installed on the computer you are browsing from.
Note To properly enable security, you must enable the check box
in the Applications-Functions Editor and define at least one level
of security access.
2 Select an application.
3 Select the Security Enabled check box.
4 Click Access. All security roles that have been defined
using the Security Roles Editor are shown in the Assign
Security Roles dialog box.
5 Select one or more security roles and click OK.
6 Click Change.
Note When you design a new application, make sure that you use
the same application ID when you make security clearance
requests through the Security API.
Note When you design a new function, make sure to use the same
application ID when you make security clearance requests through
the Security API.
Changing Passwords
You can change user passwords if you have appropriate
rights.
You can change passwords only in Standard and Operating
System security modes.
2 Click Add.
The Add Applications dialog box appears.
Chapter 14
Expression Editor
Defining an Expression
Define expressions in the edit area of the Expression Editor.
The edit area functions much like a word processor. All
entries are automatically inserted to the right of the cursor.
Therefore, each time you select a numeric key, operand, or
delimiter key, the character is inserted. You can also use
your computer keyboard to enter an expression.
After you complete the expression, click OK or Apply to save
the expression to the target object. If the expression is not
valid, an error message appears to indicate the nature of the
error. The cursor is positioned near or immediately after the
error.
Entering Functions
You can enter functions by typing them in or you can
automatically insert them into the expression using the
selection dialog boxes.
To insert a function
1 Click the edit area at the desired position.
2 Click Functions.
The Functions dialog box appears.
Expression Elements
The following sections describe the elements available for
constructing expressions.
Operators
An operator is a symbol used to manipulate the value of one
or more operands. The following table describes the valid
operators from highest precedence to lowest.
Operands
Operands can be of type Boolean (True or False; also referred
to as discrete), numeric (any positive or negative number)
and string (alpha-numeric string of any length). The
following table describes the valid operands.
Functions
There are seven functions. All the functions are available in
the Recipe Editor. However, only the Not function is
available in the Process Log Editor applications.
Delimiters
The following five delimiters are used to identify operands
and to build expressions within expressions (recursive
expressions).
Expression Examples
The following tables show expression examples for tags and
functions.
Tag Examples
The following tags are used in the examples that follow.
Function Examples
The following examples illustrate the types of expressions
that you can create and expressions that are invalid.
Chapter 15
• Control inputs
• Control outputs
• Formula parameters
• Control buttons
• Interlocks
• Alarms.
Phase Control
This section of the phase block manipulates the phase control
bits needed to operate the phase logic. The Batch
Management System enables the appropriate control word
within the control system associated with a particular phase
block. The phase logic must be written to interpret this word
and resolve the individual control bits of the word to the
start, restart, hold, abort, and reset commands.
We recommend that the phase logic reset the control word so
that the next requested function can be recognized. Thus, the
control bits are essentially one time only commands.
You must include this section for every Automatic and
Semi-Automatic phase block.
Control Buttons
The section of the phase block that corresponds to the control
buttons is constructed similarly to the phase control section.
The Batch Management System enables any defined control
buttons in the control system. The control system interprets
the control button request and performs the appropriate
function.
You can use this section in Automatic, Semi-Automatic, and
Manual phases; however, it is optional and depends on the
function of the phase.
Interlocks
The interlock section of the phase block defines only the
specific interlock conditions associated with that phase block.
Each interlock condition is assigned to a discrete memory
point and to a tag if the batch control system is to the
interlocks to the user.
This section appears only if specific interlocks are associated
with the phase block.
Alarms
The alarm section handles all error conditions specifically
associated with the phase block. All the alarms appropriate
to the phase are placed in parallel with each other to engage
a single discrete point that is used through the remainder of
the phase logic to affect the operation of the block.
This section appears only if alarms are associated with the
phase block.
Phase Status
The phase status section includes the logic necessary to place
the phase block into any one of the following modes: Ready,
Run, Held, Done, Interlocked, and Aborted. Only one of these
modes can be enabled at any time. When all of the status
control logic has been evaluated, the results are transferred
to the phase block status word that is monitored by the Batch
Management System.
You must include this section for every Automatic and
Semi-Automatic phase block.
Functional Logic
The remainder of the phase block writes the logic that
performs the required process or transfer action. This section
varies in size and complexity depending on the phase block
operation and contains the computational, comparison, and
timing functions required by the phase block.
This section also includes code that is associated with any
formula parameters that may be assigned to the phase block,
as well as logic necessary to energize process outputs.
Complete Program
You can use a provided InBatch template to structure the
complete control system program. As you can see in the
following diagram, the complete program consists of multiple
sections, depending on the complexity of the system. Also,
the control system code is structured in a manner similar to
the batch control system process model. The diagram shows
the components in a distinct order. This order is
recommended for sequential processing control systems. For
control systems that are capable of parallel processing, the
flow of information can be different.
Start of Control
System Program
System Alarms
Unit P Phase Q
Process 2
Transfer from
Process 2 to Connection 1 Phase 1
Process 3
Connection 2 Phase 2
Process N
Connection R Phase S
System Outputs
End of Control
System Program
Processes
Each defined process in the process model has a
corresponding process section in the control system program.
The code for this section is located between any transfer
classes defined in the model that use this process class.
Within each process section is the control logic for the units
associated with the process in the model.
Units
Within each process section of the control system program is
the logic corresponding to the units defined for the process
class in the process model. Within each of these units, the
control system code exists for all of the phases defined for the
unit.
Transfers
Each defined transfer in the process model has a
corresponding transfer section in the control system
program. This section is located just before the transfer’s
destination process class section of the control system
program. Within each transfer section are the connections
associated with the transfer in the model.
Connections
Within each transfer section of the control system program is
the logic corresponding to the connections defined for the
transfer class in the process model. Within each of these
connections, the control system code exists for all of the
phases defined for the connection.
Phases
The control system code for the phase blocks assigned to each
of the defined units and connections appears after the
appropriate unit or connection section of the program. The
number of phase blocks vary with the sophistication of the
system.
System Alarms
All the logic that generates control system alarms appears in
one section of the program. You can then reference the
specific alarms to affect the operation of a phase.
System Outputs
All the logic required to exercise the control system outputs
is located in one section of the program. This logic contains
references from the phase logic necessary to manipulate the
outputs. Also, any manual device operation logic is present in
this section.
Unit Control
The batch control system transmits its batch requests to the
control system through a series of tags that are mapped to
the memory of the control system. One group of these
requests handles the unit Hold, Restart, and Abort.
When the batch control system needs to change the status of
a recipe, it writes to a tag in the control system that
corresponds to the particular unit control bit. Similar to the
phase control bits, these commands are typically packed into
a word to maximize control system memory.
In the control system program, the unit control word can be
monitored continuously or upon a change of status. Each of
the commands is read as a one-shot action, and only one
request is transmitted at a time. The particular control bits
are used within each phase block associated with the
particular unit, and the phase operation responds
accordingly.
Transfer phases that use a unit placed on Hold act according
to customer specifications. Usually, when the unit is the
source of the transfer, the phase is Hold, and when the unit is
the destination of the transfer, the phase continues to
completion.
We recommend that the control system also contain unit
status bits. These status bits are not monitored by the Batch
Management System, but they are very useful within the
operation of the control system program.
The batch control system provides an enhanced Unit Control
option which consists of two Hold propagation modes that
you can use to propagate a phase Hold during batch
processing.
Hold
The unit Hold command is enabled by the Batch
Management System for all units that are allocated when a
batch hold command is run. The phase blocks associated with
the unit respond according to the user specification. When
the unit Hold bit is enabled, none of the remaining unit
control bits are set.
Restart
The unit Restart command is enabled by the Batch
Management System for all units that are allocated when a
batch Restart command is run. The phase blocks associated
with the unit respond according to the user specification.
When the unit Restart bit is enabled, none of the remaining
unit control bits are set.
Abort
The unit Abort command is enabled by the Batch
Management System for all units that are allocated when a
batch abort command is run. The phase blocks associated
with the unit respond according to the user specification.
When the unit Abort bit is enabled, none of the remaining
unit control bits are set.
Ready
The Ready bit is an optional status value that can be
generated and used within the control system to keep track
of the status of a particular unit. Generally, the Ready status
bit is set when there is no processing of any of the phase
blocks associated with the unit and all the phases have been
reset and are ready for processing. When the Ready status
control relay is enabled, none of the remaining unit status
bits should be set.
This status bit is used only within the control system
program and is not monitored by the batch control system.
Run
The Run bit is an optional status value that can be generated
and used within the control system to keep track of the
status of a particular unit. Generally, the Run status bit is
set when any of the phase blocks associated with the unit
start and everything in the phase blocks is processing
normally. When the Run status control relay is enabled, none
of the remaining unit status bits should be set.
This status bit is used only within the control system
program and is not monitored by the batch control system.
Held
The Held bit is an optional status value that can be
generated and used within the control system to keep track
of the status of a particular unit. Generally, the Held status
bit is enabled only after the unit Hold bit has been received
from the Batch Management System. When the Held status
control relay is enabled, none of the remaining unit status
bits should be set.
This status bit is used only within the control system
program and is not monitored by the batch control system.
Aborted
The Aborted bit is an optional status value that can be
generated and used within the control system to keep track
of the status of a particular unit. Generally, the Aborted
status bit is set only after the unit Abort bit has been
received from Batch Management System. When the Aborted
status control relay is enabled, none of the remaining unit
status bits should be set.
This status bit is used only within the control system
program and is not monitored by the batch control system.
Unit Status
The following figure shows the unit block interface between
the Batch Management System and the control system logic.
Note that there is no Start control signal as there is for
phases in the Phase Block Control State Diagram.
Recipe Parameters
Batch Status
Ready
Hold
Run
Unit Restart Unit Unit
Logic Held
Control Abort Status
Alarm
• A unit state goes to Ready while phases for that unit are
still active.
Caution Use caution when you create unit control and state
control logic to ensure that these improper state transitions do
not occur.
Hold Propagation
You can use two Hold propagation modes to propagate a
phase Hold during batch processing. You can enhance the
Hold mode by using the Unit Control option because the Unit
State is included in the unit control logic. For more
information on Hold propagation and the Unit Control
option, see Chapter 9, Batch Management System.
Mode 1
The Batch Manager sets the unit Hold tags when an operator
puts a batch in Hold. Control system logic puts all its phases
in Hold. In this mode, if a unit or phase goes to Held state, no
action is taken by the Batch Manager.
Mode 2
The Batch Manager monitors all phases and if any phase
goes to Held state or if the operator puts the batch in Held
state, all other phases associated with the batch are issued a
Hold command.
Phase Control
The batch control system transmits its phase requests to the
control system through a series of tags that are mapped to
the memory of the control system. One group of these
requests is used to handle the phase control commands.
The control bits available for each phase are: Start, Hold,
Restart, Abort, and Reset. Only the Start and Reset bits are
required. When the batch control system needs to change the
status of a phase block, it writes to a tag in the control
system that corresponds to the particular phase control bit.
These commands are typically packed into a word to
maximize control system memory. In the phase logic, the
phase control word can be monitored continuously or upon a
change of status. Each of the commands is read as a one-shot
action, and only one request is transmitted at a time. The
particular control bits are used within the phase block, and
the phase operation responds accordingly.
Start
The phase Start command is enabled by the Batch
Management System for a phase as it is encountered in a
batch. Generally, the Start command begins the processing of
the requested phase and puts the phase status in the Run
state. When the phase Start bit is enabled, none of the
remaining phase control bits is set. Finally, the Batch
Management System cannot send a request to start a phase
block unless the phase block status is in the Ready state.
Hold
The phase Hold command is enabled by the Batch
Management System for a phase when you select the Hold
button. Generally, the Hold command suspends the
processing of the particular phase. When the phase Hold bit
is enabled, none of the remaining phase control bits is set.
Finally, the Batch Management System cannot send a
request to hold a phase block unless the phase block status is
in the Run state.
Restart
The phase Restart command is enabled by the Batch
Management System for a phase when you select the Restart
button. Generally, the Restart command resumes the
processing of the requested phase, and returns the status of
the phase block to the Run state. When the phase Restart bit
is enabled, none of the remaining phase control bits are set.
Finally, the Batch Management System cannot send a
request to restart a phase block unless the phase block status
is in the Held state.
Abort
The phase Abort command is enabled by the Batch
Management System for a phase when you select the Abort
button. Generally, the Abort command ends the processing of
the requested phase and puts the phase status in the Aborted
state. When the phase Abort bit is enabled, none of the
remaining phase control bits are set. Finally, the Batch
Management System cannot send a request to abort a phase
block unless the phase block status is in the Held state.
Reset
The phase Reset command is enabled by the Batch
Management System for a phase when the phase has
completed normally or been aborted. Generally, the Reset
command returns all the phase logic to its original state and
puts the phase status in the Ready state. When the phase
Reset bit is enabled, none of the remaining phase control bits
are set. Finally, the Batch Management System cannot send
a request to reset a phase block unless the phase block status
is in either the Done or Aborted state.
Phase Status
The batch control system recognizes the current status of a
phase block through a series of tags that are mapped to the
memory of the control system. One group of these requests is
for monitoring the status of each phase. The status bits
available for each phase are: Ready, Run, Held, Done,
Interlocked, and Aborted. Only the Ready and Done bits are
required.
When the phase block status changes, either through the
phase logic or from a request from the Batch Management
System, the phase status word is set accordingly. In the
phase block, the phase status word can be continuously
written or written only when the status changes. When a
phase status changes in the control system, the bit associated
with that status in the phase status word is altered. All
phase status changes must be transmitted to the Batch
Management System through the phase status word. The
phase block can be in only one state at a time.
Ready Interlock
Start Conditions
Run Interlocked
Start Reset
and
Alarm
Restart Reset
Start Reset
Done
Ready
The Ready status bit is enabled by the control system for all
phases ready to run. Generally, the Ready status bit is set
when there is no processing of the phase block and
everything in the block has been reset and is ready for
processing. When the Ready status bit is enabled, none of the
remaining phase status bits can be set. Finally, the Batch
Management System cannot send a request to start a phase
block unless the phase block status is in the Ready state.
Run
The Run status bit is enabled by the control system for all
running phases. Generally, the Run status bit is set when the
phase block has been started or restarted and everything in
the block is processing normally. When the Run status bit is
enabled, none of the remaining phase status bits can be set.
Finally, the Batch Management System cannot send a
request to hold a phase block unless the phase block status is
in the Run state.
Held
The Held status bit is enabled by the control system for all
phases that have been put on hold either by the Batch
Management System or if a critical alarm occurs. Generally,
the phase logic freezes the current operation in progress and
places the block in the Held state. However, the actual
operation of the phase logic while in the Held state is
application specific. When the Held status bit is enabled,
none of the remaining phase status bits can be set. Finally,
the Batch Management System cannot send a request to
restart or abort a phase block unless the phase block status is
in the Held state.
Done
The Done status bit is enabled by the control system for all
phases that have finished their processing. When the Done
status bit is enabled, none of the remaining phase status bits
can be set. Finally, the Batch Management System cannot
send a request to reset a phase block unless the phase block
status is in the Done or the Aborted state.
Interlocked
The Interlocked status bit is enabled by the control system
for all phases in which a condition prevents their safe
processing. Generally, the Interlocked status bit is set before
the start of processing of the phase block. The Interlocked
status represents a condition of the process that prevents
proper operation of the phase block. When the Interlocked
status bit is enabled, none of the remaining phase status bits
can be set. Finally, the Batch Management System cannot
send a request to start a phase block if the phase block status
is in the Interlocked state.
Aborted
The Aborted status bit is enabled by the control system for all
phases that have been aborted. The only way this bit can be
turned on is by placing the phase block on hold and then
selecting the Abort option. Therefore, it is impossible to abort
a phase without first placing the phase on hold. When the
Aborted status bit is enabled, none of the remaining phase
status bits can be set. Finally, the Batch Management
System cannot send a request to reset a phase block unless
the phase block status is in Aborted, or the Done state.
Formula Parameters
The phase block parameters correspond to the temperatures,
times, speeds, rates, quantities, and alarm settings
configured in a particular formula for a recipe in the batch
control system. The formula parameters are downloaded to
the control system just prior to the phase Start command. The
control system receives the desired values and returns any
corresponding actual values. Phase blocks can have no
parameters or they can have many parameters.
• Actual
• High Deviation
• Low Deviation
• Preact
• Lot Code
• Material ID
• Material ID
• Actual
• High Deviation
• Low Deviation
• High Limit
• Low Limit
Target Value
The Target Value extension is used by the batch control
system to transfer a specific numerical value to the
particular phase block that is in operation. This value is one
that has been configured within the batch control system and
is specific to the current recipe as well as the phase block.
Generally, the Target Value parameters consist of process
temperatures, timer values, and transfer quantities.
Actual Value
The Actual Value extension consists of a specific numerical
value that originates within the phase block logic and is
transferred to batch control system. This value corresponds
with a Target Value that has been passed to the phase block
from the batch control system and is usually monitored and
shown in the batch control system. The values also generally
consist of process temperatures, timer values, and transfer
quantities. The comparisons between the Target Values and
corresponding Actual Values are used to determine the
completion of the respective phase block. An example of an
Actual Value is the time remaining as the soak phase block is
operating.
High Deviation
The High Deviation extension is a batch control system
configured value that corresponds to a high tolerance limit
for the Actual Value. Generally, if the Actual Value becomes
greater than the High Deviation value while the phase block
is in the Run state, an alarm is generated.
Low Deviation
The Low Deviation extension is a batch control system
configured value that corresponds to a low tolerance limit for
the Actual Values. Generally, if the Actual Value becomes
less than the Low Deviation value while the phase block is in
the run state, an alarm is generated.
High Limit
The High Limit extension is a batch control system
configured value that corresponds to the maximum value
that can be entered in the recipe for a parameter target.
Low Limit
The Low Limit extension is a batch control system configured
value that corresponds to the minimum value that can be
entered in the recipe for a parameter target.
Preact
The Preact extension value corresponds to the addition of
bulk ingredients. The Preact is the amount of an ingredient
that discharges from a source after the command has been
given to stop the flow. An example of a Preact is the extra
quantity of an ingredient that is being fed to a scale from a
conveyor. When the desired weight is reached and the
conveyor is turned off, there remains some extra quantity of
the ingredient that falls from the conveyor to the scale. The
quantity of this extra amount of an ingredient is called the
Preact. Automatic adjustments of the Preact must be done in
the control system.
Lot Code
The Lot Code extension is a batch control system configured
value that corresponds to the lot code entered by the operator
for an input material.
Material ID
The Material ID extension is a batch control system
configured value that corresponds to the identification code
of the input or output material being moved by the operator.
The Material ID is assigned in the recipe, but the operator
can change it.
Control Buttons
Each phase block can contain two control buttons for the
functions the phase block needs. These control buttons are
operated from the batch control system screen and are
transferred to the control system through tags that are
associated with control system memory locations. Examples
of control buttons are the scale reset and tare buttons used
during a weighing operation.
Interlocks
Interlocks are conditional statements that can prevent the
start of a particular phase block. Phase blocks can have any
number of Interlocks, as well as share Interlock conditions
with multiple phase blocks. The Interlocks are found in the
Interlock section of the program that corresponds to the unit
or connection with which they are associated. Usually, the
Interlocks correspond to an output device. If a particular
Interlock condition exists, the respective Interlock bit is set,
the phase status Interlock bit is set, and the phase block is
unable to be started. Interlock conditions must be changed
for the interlock to clear and the block to become ready. Also,
Interlock conditions are unavailable if the phase block is in
operation. Some examples of phase block interlocks are:
• A reactor discharge valve that is open prevents the
operation of any phase block that adds bulk ingredients
to the reactor.
Alarms
Alarms are conditional statements that can be enabled at
any time and can alter the status of a particular phase block.
Phase blocks can have any number of alarms. The alarms are
found in the alarm section of the program corresponding to
the unit or connection with which they are associated.
Usually, alarms correspond to an output device.
Two levels of severity are generally associated with alarms
for a given set of conditions:
• Advisory alarm
You can select and run phases for any unit or connection
using the Start, Hold, Restart, Abort, and Reset buttons.
You can also test control buttons and review interlock
operations.
WARNING! You must end and reset all phases before exiting the
Phase Logic testing tool. If you do not properly reset a phase,
the Batch Management System is unable to successfully use
that phase in a batch.
Testing Phases
You can easily run a phase from the Phase Logic testing tool.
You can generate, export, refresh, and print a report.
To test a phase
1 Start the Phase Logic testing tool.
2 In the Units/Connections list, click the unit or connection
that contains the phase that to run.
The Phases list shows the process or transfer phases
available for the selected unit or connection.
3 In the Phases list, click the phase to run.
The Parameter list shows any formula parameters defined
for the selected phase.
Chapter 16
Overview
I/A Series FoxAlert provides a means to view batch-related
alarms, enter comments, and unsuspend equipment phases.
Through the interaction of equipment system tags, Batch
Manager and I/A Series Control Processor, Event Manager is
able to capture batch-related alarms.
Batch alarms, in I/A Series Batch Suite, are captured,
associated with a batch and stored in the Batch Historian.
The user can view alarms for a specific batch using the
FoxAlert alarm and can attach a comment to any batch
specific alarm event in FoxAlert. A set of three alarm report
queries is provided to retrieve batch analog alarms and
comments, Boolean alarms and comments, and sequence
blocks and comments from batch history and include them in
batch reports.
Event Manager
Event Manager is a Windows service that communicates
with the I/A Series subsystems. The Event Manager receives
all I/A Series alarms and stores them in the Batch Historian.
Event Manager uses either the LOOPID value or equipment
allocation to determine the batch identification for alarms.
During batch processing, Event Manager compares the
LOOPID field of the alarm message with the current list of
batches in the schedule.
If there is a match, the alarm is considered a batch alarm. An
Alarm ID is then assigned to the alarm, and it is logged to
the Batch Historian along with its Batch Identification
(Campaign, Lot and Batch ID). If the LOOPID value does not
match a Batch ID in the schedule, Event Manager searches
the Link database for the Compound:Block name.
If there is a match, the alarm is considered a batch alarm.
Event Manager determines the equipment name (Unit,
Connection or Segment) from the Link database and then,
using Equipment Allocation information, determines the
Batch ID. An Alarm ID is assigned to the alarm and it is
logged to the Batch Historian along with its Batch
Identification (Campaign, Lot and Batch ID). If the
Compound:Block name is not found in the Link database, the
alarm is not considered to be a batch alarm and is discarded.
• Exclusive Use
In this case, there is more than one compound used to
control the equipment entity. There is typically one
lead compound with the same name as the equipment
entity and other exclusive use compounds whose logic
is used by the lead compound as required. In this
situation, the exclusive use compounds can only be
used by one and only one lead compound. Alarms
generated in the exclusive use compound should be
associated with the batch that has allocated the
equipment entity that is associated with the lead
compound.
Example: A filter can be used by either Reactor_A or
Reactor_B, but only one reactor at a time can use the
filter. When the filter is being used with Reactor_A,
filter alarms must be logged to the batch that has
allocated Reactor_A. If the filter is being used with
Reactor_B, then the alarms must be logged to the
batch that has allocated Reactor_B.
Solution: The LOOPID approach must be used. When
Reactor_A is allocated the Batch ID is written to the
LOOPID of the Reactor_A lead compound by
I/A Series Batch. When the filter is used, the Batch
ID should be written to the LOOPID of the compound,
so if alarm occur in the filter the correct Batch ID is
used.
• Shared Use
In this case, there is more than one compound used to
control the equipment entity. There is typically a lead
compound with the same name as the equipment
entity and other compounds whose logic is used by
the lead compound as required. In this situation, the
shared compound can be used by more than one lead
compound simultaneously. Alarms generated in any
of the blocks within this shared compound should be
associated to both batches if both lead compounds are
using the shared compound.
Example: An example of this is a heat exchanger that
can be used by more than one reactor simultaneously.
When the heat exchanger is being used by Reactor_A
and Reactor_B, heat exchanger alarms should be
logged to the batch that allocated Reactor_A and to
the batch that allocated Reactor_B.
Solution: I/A Series Batch does not support this
situation. Batch alarms can only be associated to one
equipment entity not multiple equipment entities.
• One to One Usage
In this case, there is more than one compound used to
control an equipment entity. There is typically a lead
compound with the same name as the equipment
entity and other dedicated compounds whose logic is
used by the lead compound as required. In this
situation, the dedicated compounds are always used
by the same lead compound and are never shared.
Alarms generated in any of the dedicated compounds
should be associated to the batch that has allocated
the lead compound.
Example: A Filter is used by only by Reactor_A. When
the filter is being used with Reactor_A, filter alarms
should be logged to the batch that has allocated
Rector_A.
Solution: Either the LOOPID or the equipment
allocation approach can be used. If the equipment
allocation approach is used, then at least one
equipment entity tag (Reactor_A) must be linked to
an I/A Series filter tag (Compound:Block.Parameter).
Chapter 17
Overview
ActiveX controls are graphical components with built-in
processing logic that you can embed in any ActiveX container
application. InTouch Window Maker, Visual Basic, C++, and
C# are examples of ActiveX containers.
Using the GUI controls can greatly reduce application
development time. This chapter describes how to use the
ActiveX GUI controls in the InTouch WindowMaker
environment, but many of the concepts discussed here apply
to Visual Basic, C++, or C# usage.
BatchGuiConfig
The BatchGuiConfig control provides central administration
of all Batch GUI controls for an application. The
BatchGuiConfig control is invisible at run time. It has no
graphical component. This control is where the connection to
the InBatch Batch Server is configured.
Properties
The following properties apply to the BatchGuiConfig
control.
Host1
This selection sets this property to the host name of the
InBatch Batch Server. In a redundant server architecture,
this is the host name of the Primary Batch Server.
Host2
This property is only used with redundant server
architectures. It sets this property to the host name of the
Redundant Batch Server.
AutoInit
When set to 1 (or checked on the property page) this property
initializes the connection to the Batch Server automatically
when the control is loaded in a running application, or the
application is switched from design mode to run mode (such
as WindowMaker to WindowViewer).
Unit
This is a string set to the unit to focus on when running in
Unit-Centric mode. If this property is left blank, the Batch
GUI controls run in Batch-Centric mode.
MessageBoxes
This property is a true or false Boolean type. True specifies
that error message boxes should be shown. False turns off
the error message boxes. The default value of MessageBoxes
property is true.
ServerConnected
This property is available only at run time (not available at
design time). It is set to True (or a non-zero value) when
there is an active connection to the Batch Server.
The following properties define the tcp/ip port definitions for
the connection to the Batch Server. The port definitions are
pre-defined with the default numbers used on the Batch
Server. These must match the port definitions used on the
Batch Server for communications to be successful. Only
change these properties if you have changed the port
definitions on the Batch Server because of a system conflict.
• PortBatchMngr
• PortEnvMngr
• PortInfoMngr
• PortRedMngr
• PortSecMngr
• PortUnilinkMngr
Methods
You can use the following methods with BatchGuiConfig.
AltSetCancelMsgBox()
The AltSetCancelMsgBox method is an alternative way to
cancel a message box raised by the ActionError event. (see
ActionError event below). This method has no arguments.
GetOcxBatchObject()
The GecOCXBatchObject method returns a reference to the
underlying the OcxBatch control. This allows for more
custom control of the interface in programming
environments. Since this method returns an object reference,
it cannot be used by InTouch. This method has no
arguments.
Init()
The Init method initializes the connection to the Batch
Server. This is needed only when the connection is lost if the
AutoInit property is set. This method has no arguments.
Term()
The Term method terminates the connection to Batch Server.
This method has no arguments.
Events
You can use the following events with BatchGuiConfig.
ActionError
The ActionError event is called when a non-server generated
error occurs during a batch action. Arguments: ErrorCode:
an integer error code, and CancelMsgBox: an integer
reference. It returns 1 to the CancelMsgBox argument to
prevent the error message box from appearing.
LostServerConnection
The LostServerConnection event is called when the
connection to Batch Server is lost. It has no arguments.
SystemShuttingDown
The SystemShuttingDown event is called when the Batch
Server is shutting down. It has no arguments.
BatchList
The BatchList control provides live list data. You can
configure the BatchList control to be a schedule list, active
batch list, active phase list, or parameter list. You can
configure any list found on Batch or Batch Scheduler with
the BatchList control.
BatchView
BatchView has the following components:
• Batch (Active Batch List)
• Message List
• Question List
• Transition:
• Transition List
• Tag List
• Allocation Queue List
• Phase Edit:
• Phase List
• Parameter List
• Equipment Allocation:
• Equipment
• Instance
• Select Equipment:
• Instance
• Equipment
• Phase List (Active Phases)
• Parameter List
• Interlock List
ScheduleEdit
ScheduleEdit has the following components:
• Schedule List
• Train List
• Recipe List
Error List
Properties
The following properties apply to the BatchList control.
ColumnHeaders
The ColumnHeaders property is a comma-separated string to
define the column heading names shown on the list control.
Columns
The Columns property is available at run time only. It
returns the number of columns in the list. The property is
Read Only.
ColumnWidths
The ColumnWidths property defines the widths (in
characters) of each column in the list.
Grid
The Grid property sets or returns a value indicating if grid
lines are shown on the control.
Rows
The Rows property is available only at run time. It returns
the number of rows in the list. The property is Read only.
SelectedRow
The SelectedRow property is available only at run time. It
sets or returns the currently selected row number. Row
numbers start at 0. A value of –1 indicates no selection.
BackColor
The BackColor property sets or returns the background color
of the list.
ForeColor
The ForeColor property sets or returns the foreground (text)
color of the list.
Font
The Font property sets or returns the character font used for
the list. The property affects the size of the control.
Methods
You can use the following methods with the BatchList
control.
AltSetBusyMessage()
AltSetBusyMessage is an alternate method for setting the
list busy message from within the BeforeListBusy event (see
BeforeListBusy event below).
GetItemColumnValue()
The GetItemColumnValue method returns the string
contained in any cell of the list. Arguments are Row and
Column numbers.
Events
You can use the following events with the BatchList control.
Afterdeck
The Afterdeck event is called when the control is clicked and
after any batch-specific processing is performed. The event
passes the arguments Row number and Result. The Result
value indicates if it was a double or single click.
AllItemsDeleted
The AllItemsDeleted event is called after the list has been
cleared.
BeforeListBusy
The BeforeListIsBusy event is called before the list is about
to indicate that it is busy.
Click
The Click event is called when a list item is clicked but before
any batch-specific processing is performed. The row number
clicked is passed as an argument.
DblClick
The DblClick event is called when a list item is double clicked
but before any batch-specific processing is performed. The
row number double clicked is passed as an argument.
ItemAdded
The ItemAdded event is called after a list item (row) has been
added to the list. The row number of the added row is passed
as an argument.
ItemChanged
The ItemChanged event is called after a list item (row) has
been changed. The row number of the changed row is passed
as an argument.
ItemDeleted
The ItemDeleted event is called after a list item (row) has
been deleted from the list. The old row number of the deleted
line is passed as an argument.
ItemSelected
The ItemSelected event is called after a list item (row) has
been selected. The row number selected is passed as an
argument.
BatchField
The BatchField control is a data field that is linked to a
BatchList control. You can configure the BatchField control
very similarly to the BatchList control. The same
hierarchical list of types is available as in the BatchList
control, but with an extra level of detail. Choose the list in
the Property page and then the data field of the list desired.
Different BatchField controls have different visual
appearances. While most types look like a simple text box
control, some appear as lists, combo boxes, multi-line text
boxes, or even check boxes.
In each case, the node directly above the selected Field type
in the property page indicates the type of BatchList that the
BatchField control is associated with. The linking of the
BatchField to the parent BatchList control is automatic. The
BatchField control has been designed to work with the
BatchList controls so that no programming or scripting is
required for basic batch functionality. You can add
functionality to the control by using scripting or
programming.
Properties
The following properties apply to the BatchField control.
AutoEnabled
The AutoEnabled property returns the current enabled state
of the control. This state is read only at run time. The
internal logic of the control enables and disables the
BatchField control automatically.
Editable
The Editable property sets or returns a value indicating if
the user may write to the control.
Label
The Label property specifies the text label to for check box
BatchField controls.
Static
When the Static property is set to true, the BatchField
appears as a label (no surrounding box).
ForceDisable
When the ForceDisable property is set to True, the field is
disabled. The real field state is preserved so that when the
Force Disable is set to False the real condition is restored.
The default is False.
ValueText
The ValueText property sets or returns the current text
value of the control.
BackColor
The BackColor property sets or returns the background color
of the control.
ForeColor
The ForeColor property sets or returns the foreground (text)
color of the control.
Font
The Font property sets or returns the font used by the
control. It is Read-Only at run time. The property influences
the size of the control.
Methods
You can use the following method with the BatchField
control.
AltSetCancel()
The AltSetCancel method provides an alternate way to
cancel a field value change action from within the
BeforeExecute event.
Events
You can use the following events with the BatchField control.
AfterExecute
The AfterExecute method is called after any action occurs
from a field value change.
BeforeExecute
The BeforeExecute method is called before any action occurs
from a field value change.
StateChanged
The StateChanged method is called after the control’s value
or enabled state is updated. The Change Type is passed as an
argument.
BatchButton
The BatchButton is a configurable batch action button. Like
the BatchField control, the BatchButton control is tied to a
BatchList control or in some cases it is linked to a BatchField
control.
Properties
The following properties apply to the BatchButton control.
Appearance
The Appearance property specifies whether the button
should be shown flat or 3-D.
AutoEnabled
The AutoEnabled property returns the current enabled state
of the button. This property is Read-Only. The internal logic
of the control automatically enables and disables the control.
Caption
The Caption property specifies an alternate caption text for
the button. A default caption based on the selected button
type is used if this property is left blank. The default caption
is in English.
ForceDisable
When set to True, the ForceDisable property forces the field
to be disabled. The real field state is preserved so that when
the ForceIfDisable is set to False, the real condition is
restored. The default is False.
AltVisible
The AltVisible property controls the button visibility. True
makes the button visible, False makes it invisible. The
default is True. This property should only be used by
InTouch. Use the Visible property when using other
containers.
BackColor
The BackColor property specifies the background color for
the button.
ForeColor
The ForeColor property specifies the foreground (text) color
for the button.
Font
The Font property specifies the font for the button caption.
Methods
You can use the following methods with the BatchButton
control.
AltSetCancel()
The AltSetCancel method provides an alternate way to
cancel a button action from within the BeforeExecute event.
Execute()
The Execute method forces the buttons action to execute
without having the user click it.
Events
You can use the following events with the BatchButton
control.
AfterExecute
The AfterExecute event is called after any action occurs from
a button click.
BeforeExecute
The BeforeExecute event is called before any action occurs
from a button click.
StateChanged
The StateChanged event is called after the caption or
enabled state of a button is updated. The Change Type is
passed as an argument.
7 Copy this control seven (7) more times and configure the
copies as the Delete, Change, CleanUp, Initialize Batch,
Initialize All, Move Up, and Move Down buttons as shown.
Note You can populate the Recipe and Train fields from the
Recipe List and Train List BatchList controls respectively. You can
add them on this window or as a separate pop-up window.
Properties
The following properties apply to the BatchSecurity control.
AutoInit
When the AutoInit property is set to 1 (or checked on the
property page) the property initializes the connection to the
Batch Server automatically when the control is loaded in a
running application, or the application is switched from
design mode to run mode (WindowMaker to WindowViewer).
The Security Manager service on the Batch Server must be
running for the control to connect.
CheckByPassword
Set the CheckByPassword string property to the password
for the Check-By user. This property is used for the
windowless function clearance checks. Its use is described
later in this chapter.
CheckByUserID
Set the CheckByUserID string property to the User ID for
the Check-By user. This property is used for the windowless
function clearance checks. Its use is described later in this
chapter.
DoneByPassword
Set the DoneByPassword string property to the password for
the Done-By user. This property is used for the windowless
function clearance checks. Its use is described later in this
chapter.
DoneByUserID
Set this string property to the User ID for the Done-By user.
This property is used for the windowless function clearance
checks. Its use is described later in this chapter.
Host1
Set the Host1 property to the host name of the InBatch Batch
Server. In a redundant server architecture, this is the host
name of the Primary Batch Server.
Host2
The Host2 property is only used with redundant server
architectures. Set this property to the host name of the
Redundant Batch Server.
LastErrorCode
The LastErrorCode property returns the error code (integer)
of the most recent security request. A zero (0) indicates no
error.
LastErrorMessage
The LastErrorMessage property returns the error message
(string) of the most recent security request.
LastErrorRetriesExceeded
The LastErrorRetriesExceeded property returns the retries
exceeded status (integer) of the most recent security request.
The value is 1 if the retry limit has been exceeded.
Otherwise, it is 0. Retries exceeded status can be cleared
with the ResetRetries() method.
SecurityPending
The SecurityPending property returns a value (integer)
indicating if a security request is pending. A non-zero value
indicates a pending request. A zero (0) indicates no requests
are pending. Any pending requests can be cancelled with the
AbortPendingSecurity() method.
PortRedMngr
The PortRedMngr property is the user setting for the tcp
application port definition used by the Redundancy Manager
(RedMngr) on the batch server. It defaults to 9006 and
should be the same as the tcp port definition for RedMngr on
the batch server. This definition is found in the
WINNT\system32\drivers\etc\services file on the batch
server.
PortSecMngr
The PortSecMngr property is the user setting for the tcp
application port definition used by the Security Manager
(SecMngr) on the batch server. It defaults to 9004 and should
be the same as the tcp port definition for SecMngr on the
batch server. This definition is found in the
WINNT\system32\drivers\etc\services file on the batch
server.
Methods
You can use the following methods with the BatchSecurity
control.
AbortPendingSecurity()
The AbortPendingSecuritiy method aborts any pending
security requests. If a security dialog is open, it closes it.
There is no return code.
GetApplicationName(ApplicationID)
The GetApplicationName method returns the name (string)
of the security application identified by the ApplicationID
(long) argument.
GetFunctionName(ApplicationID, FunctionID)
The GetFunctionName method returns the name (string) of
the security function identified by the ApplicationID (long)
and FunctionID (long) arguments.
GetUserName(UserID)
The GetUserName method returns the name (string) of the
user identified by the UserID (string) argument.
Init()
The Init method initializes a connection to the Security
Manager service running on the Batch Server identified by
the Host1 or Host2 property. The Init method first attempts
to connect to the batch server on Host1, and then attempts
Host2. (See Host1 and Host2 properties above). The security
manager service must be running in order to be successful.
QueryApplicationSecurity(ApplicationID)
The QueryApplicationSecurity method returns an integer
(secRequestType) indicating if security is required for the
application identified by ApplicationID (long). The return
value is 0 if no security is required to access the application,
and 3 if security is required.
QueryFunctionSecurity(ApplicationID, FunctionID)
The QueryFunctionSecurity method returns an integer
(secRequestType) indicating what security is required for the
function identified by ApplicationID (long) and FunctionID
(long). The return value is 0 if no security is required to
access the function, 1 if DoneBy security is required.
ResetRetries()
The RestRetries method resets the retry count for
authentication attempts. The limit for retries is configured in
the InBatch security system. When the limit is reached, an
error results.
Term()
The Term method terminates the connection to the InBatch
Security Manager.
Events
You can use the following events with the BatchSecurity
control.
ApplicationClearanceComplete(Result, ApplicationID,
UserData)
The ApplicationClearanceComplete event is raised after a
ApplicationClearance method has been called and any
security dialogs or other information has been provided to
the security system. The Result (secResultType) argument
contains the result code: 0 if the clearance request was
successful, 1 if not.
FunctionClearanceComplete(Result, ApplicationID,
FunctionID, UserData)
The FunctionClearance event is raised after a
FunctionClearance method has been called and all security
dialogs or other information has been provided to the
security system. The Result (secResultType) argument
contains the result code: 0 if the clearance request was
successful, 1 if not.
RequestUserInfo(RequestType, ApplicationID,
ApplicationName, FunctionID, FunctionName, UserData)
The RequestUserInfo event is called when you are using a
secWindowType of secWindowlessEvent with the
ApplicationClearance or FunctionClearance methods. It is
called when the clearance request needs some information.
If RequestType is secRequestApplication or
secRequestDoneBy, you must set the DoneByUserID and
DoneByPassword properties before returning from this
event.
If RequestType is secRequestCheckBy, must set the
CheckByUserID and CheckByPassword properties before
returning.
This event may be called repeatedly until you have returned
proper credentials. You may call the AbortPendingSecurity
method within this event to cancel the security request. You
may also use the LastErrorCode and/or LastErrorMessage
properties to determine if there is a previous access error to
report to the user. The other arguments passed into this
event are the values passed into the ApplicationClearance or
FunctionClearance method, except for the ApplicationName
and FunctionName arguments, which are useful if you need
to prompt the user for the information.
Enumerations
The following enumeration sets are used by the
BatchSecurity control.
secWindowType
This value is used as an argument to the
ApplicationClearance and FunctionClearance methods. The
value of the WinType argument determines the behavior of
the security dialogs and how the user must interact with the
security system.
secWindowModal (0)
This type prompts the user for information as required using
a Modal security dialog. Therefore, the clearance call does
not return until a result has been determined.
secWindowModeless (1)
This type prompts the user for information as required using
a Modeless security dialog. Therefore, the clearance call
returns immediately with a result of secResultPending, and
the actual result is returned through a *ClearanceComplete
event.
secWindowlessEvent (2)
This type requests information as required by firing
RequestUserInfo or RequestNewPassword events. The
program can then provide the required information by
setting various properties on the control from within the
event. It is a modal interface, which means that the clearance
call does not return until a result has been determined.
However, there is no built-in security dialog presented to the
user. This window type is designed to allow the designer to
create their own security dialog boxes, which would be
invoked when the RequestUserInfo and
RequestNewPassword events are raised.
secWindowlessCheck (3)
This type performs a simple one-shot access check, using
information provided before the clearance method is called. It
can be used when you already know the level of security
required and the clearance information. The result of the
clearance request is known upon return. When using this
type of clearance check, you must set the DoneByUserID,
DoneByPassword, CheckByUserID, and CheckByPassword
properties (as needed) before you call the clearance method.
You can determine which ones are required by calling the
QueryApplicationSecurity or QueryFunctionSecurity
methods.
secResultType
Many of the functions return one of the following result
types. The LastErrorMessage and LastErrorCode properties
can be used to dig deeper into what a specific problem was.
secResultOk (0)
This type indicates that clearance was granted or the method
succeeded.
secResultFail (1)
This type indicates that clearance was not granted or the
method had some other failure.
secResultPending (2)
This type indicates that clearance was not yet granted and
the result is to be returned later or another security request
is pending, so you cannot perform this action at this time.
secRequestType
This type is mainly used when the control is requesting
information through one of the Request* events. It specifies
what information the security clearance is currently
requesting.
secRequestNone (0)
This type is never passed into the Request events, but can be
returned by the Query* methods to specify that no security is
required for the queried application/function.
secRequestDoneBy (1)
This type is passed into the Request* events when DoneBy
information is required to complete a function security
clearance request. It can also be returned by the
QueryFunctionSecurity method to specify that DoneBy
security is required for the queried function.
secRequestCheckBy (2)
This type is passed into the Request* events when CheckBy
information is required to complete a function security
clearance request. It can also be returned by the
QueryFunctionSecurity method to specify that DoneBy and
CheckBy security is required for the queried function.
secRequestApplication (3)
This type is passed into the Request* events when DoneBy
information is required to complete an application security
clearance request. It can also be returned by the
QueryApplicationSecurity method to specify that DoneBy
security is required for the queried application.
IF #ThisEvent.FunctionClearanceCompleteUserData ==
101 THEN
XV101_MAN = 1;
ENDIF;
IF #ThisEvent.FunctionClearanceCompleteUserData ==
102 THEN
XV102_MAN = 1;
ENDIF;
ELSE
ENDIF;
frmSecDialog.Password.Text
Case secRequestType.secRequestDoneBy
frmSecDialog.lblLevel.Caption = "Done By"
frmSecDialog.Show vbModal
BatchSec1.DoneByUserID =
frmSecDialog.UserID.Text
BatchSec1.DoneByPassword = _
frmSecDialog.Password.Text
Case secRequestType.secRequestCheckBy
frmSecDialog.lblLevel.Caption = "Check By"
frmSecDialog.Show vbModal
BatchSec1.CheckByUserID =
frmSecDialog.UserID.Text
BatchSec1.CheckByPassword = _
frmSecDialog.Password.Text
End Select
End Sub
Chapter 18
Overview
Equipment tags and batch function tags are the two general
categories of InBatch tags. The equipment tags refer to the
phase control and status tags and to the phase formula
parameter tags. The batch function tags provide access to the
InBatch Management System hooks.To use any of these tags
in an InTouch client application, the tag must be accessible
to the application.
The following three methods are available for making these
tags available in the InTouch application:
• Manually define the tags in InTouch.
Note Batch function tags are not accessible through the InTouch
tag browser.
3 Click New.
The Define Tag Source dialog box appears.
Where:
<ApplicationName> refers to IBCli.
<TagName> refers to any of these: CONNSTAT,
CONNINFO, LCTIME, LDTIME.
<ApplicationInstanceName> refers to the IBCli instance
name.
Examples:
• InBatch:IBCLI_CONNSTAT_IBCLIINS.Value
• InBatch:IBCLI_CONNINFO_IBCLIINS.Value
• InBatch:IBCLI_LCTIME_IBCLI.Value
• InBatch:IBCLI_LDTIME_IBCLI.Value
Chapter 19
Overview
The InBatch Security System defines security for InBatch
server applications and InBatch client applications. All
security requests performed from clients are evaluated by the
InBatch security system. Function clearance is either
granted or denied based on the user and password
information provided from the client and the security
configuration defined in InBatch.
DoneBy Security
The Security Clearance Request dialog box for User ID/Pwd for
DoneBy appears if the operator performs an InBatch Client
function that has been configured with only DoneBy security
in the InBatch Security Editor. The operator must enter a
valid User ID and Password to be able to perform the
function.
Chapter 20
Overview
InBatch takes advantage of the powerful alarm and event
system provided with InTouch, which is also leveraged by
Wonderware Application Server. Additionally the InBatch
Reports system provides the alarm information in the
context of the batch in which the alarm or event occurred.
The Alarm DB Logger manager processes all the data
logging.
Required Configuration
Configure the alarms and events within InTouch or
Wonderware Application Server. All tags must adhere to the
InBatch tag structure for mapping units and connections to a
batch. Only tags with a unit or connection name in the first
eight characters of the tag can be mapped to a batch. Tags
that cannot be mapped to a batch are not associated to the
alarms report.
For more information on the InBatch tag structure, see
Chapter 3, Process Modeling.
Chapter 21
Redundancy
Overview
Redundancy is the capability of the batch management
system to automatically switch batch control to a backup
server if a primary server shuts down because of a hardware
failure or power loss. A secondary network should be
exclusively dedicated to batch system redundancy. This
secondary network supports the heartbeat between the
primary and backup batch servers.
Redundancy Operation
InBatch development and InBatch run-time clients are
normally clients of a single InBatch server. A redundant
system has two servers, either of which can operate as the
primary InBatch server. Each client must therefore be
connected to the primary LAN and must also be properly
configured to gain network access to both servers.
The InBatch control system can operate concurrent
configuration and run-time servers. The presence of two
identical servers ensures that the backup server can continue
run-time operation if the master server fails.
All database modifications are written to databases located
on both the master and backup servers. If the master server
fails, the backup server can continue all batch operations
after the failover event.
Failover Conditions
The following conditions trigger failovers in a redundant
server configuration:
• Critical Services shutdown – If any of the following
InBatch services fail (crash or do not run):
Note For the Critical Services shutdown and the Exit and
Shutdown of the Master server, you must configure the InTouch
BatchGuiControl ActiveX control of the client to fail over. To do
this, see Chapter 2 in the InBatch Deployment Guide.
Failover Scenarios
The following section describes basic InBatch server failover
scenarios. Scenarios include failover using two servers and a
recommended failover implementation in the context of
Wonderware Application Server.
Note Do not start the failed master as the backup until the
problem that caused the failure is repaired.
10.40.20.181 10.40.20.182
Control Processors
Lmhosts File
The lmhosts file contains the structure described below. The
lmhosts file is located in the following folder on your
computer:
C:\winnt\system32\drivers\etc
The file is the same for all stations. Note that the names
entered correspond to the entries in the RedCfg file. The
#PRE entries cause the entries to be preloaded when your
system is started. Using PRE entries is recommended for
improved performance.
10.40.20.181 AW7003 #PRE
10.40.20.181 AW7003PN #PRE
151.128.8.65 AW7003SN #PRE
10.40.20.182 AW7004 #PRE
10.40.20.182 AW7004PN #PRE
151.128.8.66 AW7004SN #PRE
10.40.20.183 AW7005 #PRE
10.40.20.184 AW7006 #PRE
10.40.20.185 HistoryServer #PRE
Hosts File
The Hosts file contains I/A Series network information and is
located in the following file on your computer:
C:\winnt\system32\drivers\etc
You do not need to change the Hosts file because I/A Series
Batch software does not use this file.
Chapter 22
System Administration
3 Click History.
The main History page opens in the right pane.
• public
• db_owner
• BatchAdminRole
If you enter a new User ID and new Password (History
Admin page) that are not defined in SQL Server Security
Logins on the History Server, that user is accepted and
the following message appears:
SQL authentication failed for user <name>
To access the Error Queue Admin page from the InBatch History
Server
1 On the Start menu of your InBatch History Server, point
to Programs, Wonderware, InBatch, InBatch History Server
and then select History Database Administration.
The main History page opens.
2 Click Error Queue Admin.
3 The Error Queue Admin page opens.
Note If you decide not to fix the error, you can click the Disable
retry attempts check box.
• Restore jobs enable you to restore the data that you have
backed up.
Note The archiving operation may fail when the location of the
dump file is set to the system root (that is, C:\), depending on the
credentials assigned to the Microsoft SQL services in the History
node. The archiving operation will fail when SQL services (MSSQL
Server, Server Agent) use the "Network Service" account. However,
when the user associated with the services is set to Local User
Account or some other administrator account for SQL Services
(MSSQL Server, SQL Server Agent) archiving will work as expected,
in spite of the location of the dump file.
2 In the Job Name box, type a name for the archive job.
3 In the Job Description box, optionally type some text that
describes the archive job.
4 In the Scheduled Date box, type the date that the History
Server is to perform the archive job (mm/dd/yyyy).
5 In the Scheduled Time box, type the time when the
History server is to perform the archive job (hh:mm
am/pm).
6 In the Dump Device Name box, type any device name that
you want to use for the archive job. The History Archive
application creates a backup device in Microsoft SQL
Server with the same name.
7 In the Dump File Name box, type the complete path and
name to be used when the archive job runs.
8 Select a name from the Archive Database Name list.
9 In the History Data Start Date box, type the starting point
for archiving history data (mm/dd/yyyy). This date is
inclusive. All batches completed on or after this date are
archived.
10 In the History Data End Date box, type the ending point for
archiving history data (mm/dd/yyyy). This date is
inclusive. All batches completed on or before this date are
archived.
11 Select the Purge Data after Archive check box if you want
the archive job to delete the data (defined by the start
and end dates) from the History database when it runs
the archive job.
12 Click Add.
2 In the Job Name box, type a name for the archive job.
3 In the Job Description box, optionally type some text that
describes the archive job.
4 In the Scheduled Date box, type the date that the History
Server is to perform the archive job (mm/dd/yyyy).
5 In the Scheduled Time box, type the time when the
History server is to perform the archive job (hh:mm
am/pm).
6 In the History Data Start Date box, type the starting point
for archiving history data (mm/dd/yyyy). This date is
inclusive. All batches completed on or after this date are
archived.
7 In the History Data End Date box, type the ending point for
archiving history data (mm/dd/yyyy). This date is
inclusive. All batches completed on or before this date are
archived.
8 Click Add.
2 In the Job Name box, type a name for the archive job.
3 In the Job Description box, optionally type some text that
describes the archive job.
4 In the Scheduled Date box, type the date that the History
Server is to perform the archive job (mm/dd/yyyy).
5 In the Scheduled Time box, type the time when the
History server is to perform the archive job (hh:mm
am/pm).
6 In the Dump Device Name box, type any device name that
you want to use for the archive job. The History Archive
application creates a backup device in Microsoft SQL
Server with the same name.
7 Select a name from the Archive Database Name list.
8 Click Add.
2 Click Delete.
4 Review and edit the Add Restore job, and then click Add.
The selected archive is restored.
Where:
-L enables database locking. (This is required)
<path1> is the source location of the database that you
want to back up (for example., C:\Program
Files\FactorySuite\InBatch\cfg\config_A)
<db_name> is the source database that you want to back
up (for example, ModelDB)
<path2> is the destination location (for example, D:\)
<backup_db_name> is the backup database name (for
example, ModelDB)
Example
dbcopy -L ..\cfg\config_A\modeldb D:\modeldb
.batchwr Location:
InBatch\cfg\config_A
Description:
Directory that contains all batch Warm Restart data
files.
Usage:
Created by install and no modifications are made to
directory.
.batchwr\alloc_req.wr Location:
InBatch\cfg\config_A
Description:
Current equipment allocation table across all
batches.
Usage:
Changes made by the Batch Manager during batch
processing.
.batchwr\system.wr Location:
InBatch\cfg\config_A
Description:
Current value of system tags across all equipment.
Usage:
Changes made by the Batch Manager during batch
processing.
.batchwr\[clb].wr Location:
InBatch\cfg\config_A
Description:
File for each batch in the schedule database.
Structure of file name is
CampaignID.LotID.BatchID.wr.
Usage:
Files added and removed by Batch Manager during
batch processing.
.F2.lock Location:
InBatch\cfg\config_A
Description:
Batch warm restart lock file created on master server
by backup server during redundancy startup.
Usage:
Redundancy only. Created by RedMngr when the
backup InBatch server is started.
.F2.sync Location:
InBatch\cfg\config_A
Description:
Batch warm restart synchronization file created on
master server by backup server during redundancy
startup.
Usage:
Redundancy only. Created by RedMngr when the
backup batch server is started.
.RedState Location:
InBatch\cfg\config_A
Description:
Contains the current state of the server in a
redundant configuration.
Usage:
Redundancy only. Created and modified by RedMngr
during redundancy operation.
BatchDB.dat Location:
InBatch\cfg\config_A
Description:
Batch schedule database data file.
Usage:
Changes as batches are added and removed from the
Batch Scheduler.
BatchDB.dbd Location:
InBatch\cfg\config_A
Description:
Batch schedule database schema file.
Usage:
Does not change.
BatchDB.key Location:
InBatch\cfg\config_A
Description:
Batch schedule database index file.
Usage:
Changes as batches are added and removed from the
Batch Scheduler.
BatchDB.lock Location:
InBatch\cfg\config_A
Description:
Batch schedule database lock file created on master
server by backup server during redundancy startup.
Usage:
Redundancy only. Created by RedMngr when the
backup batch server is started.
BatchDB.sync Location:
InBatch\cfg\config_A
Description:
Batch schedule database synchronization file created
on master server by backup server during
redundancy startup.
Usage:
Redundancy only. Created by RedMngr when the
backup batch server is started.
[hostname][pid].log Location:
InBatch\cfg\config_A
Description:
Raima Data Manager transaction log files.
Usage:
Each application creates one Transaction Log File
(LOG) file where hostname is the name of the
machine and pid is the process id. This file is used
within a transaction to store the pending database
changes. An application creates its own LOG file at
the beginning of processing and deletes it at the end
of processing.
CfgIALinkDB.dat Location:
(I/A Series only) InBatch\cfg\config_A
Description:
Configuration IALink database data file.
Usage:
Changes as modifications are made to the
configuration Process Model database and also
though changes made with IALink or by selecting the
Update Configuration menu option within the
Environment Display.
CfgIALinkDB.dbd Location:
(I/A Series only) InBatch\cfg\config_A
Description:
Configuration IALink database schema file.
Usage:
Does not change.
CfgIALinkDB.key Location:
(I/A Series only) InBatch\cfg\config_A
Description:
Configuration IALink database index file.
Usage:
Changes as modifications are made to the
configuration Process Model database and also
though changes made with IALink or by selecting the
Update Configuration menu option within the
Environment Display.
CfgIALinkDB.lock Location:
(I/A Series only) InBatch\cfg\config_A
Description:
Configuration IALink database lock file created on
master server by backup server during redundancy
startup.
Usage:
Redundancy only. Created by RedMngr when the
backup batch server is started.
CfgIALinkDB.sync Location:
(I/A Series only) InBatch\cfg\config_A
Description:
Configuration IALink database synchronization file
created on master server by backup server during
redundancy startup.
Usage:
Redundancy only. Created by RedMngr when the
backup batch server is started.
CfgLinkDB.dat Location:
(InBatch only) InBatch\cfg\config_A
Description:
Configuration TagLinker database data file.
Usage:
Changes as modifications are made to the
configuration Process Model database and also
though changes made with TagLinker or by selecting
the Update Configuration menu option within the
Environment Display.
CfgLinkDB.dbd Location:
(InBatch only) InBatch\cfg\config_A
Description:
Configuration TagLinker database schema file.
Usage:
Does not change.
CfgLinkDB.key Location:
(InBatch only) InBatch\cfg\config_A
Description:
Configuration TagLinker database index file.
Usage:
Changes as modifications are made to the
configuration Process Model database and also
though changes made with TagLinker or by selecting
the Update Configuration menu option within the
Environment Display.
CfgLinkDB.lock Location:
(InBatch only) InBatch\cfg\config_A
Description:
Configuration TagLinker database lock file created
on master server by backup server during
redundancy startup.
Usage:
Redundancy only. Created by RedMngr when the
backup batch server is started.
CfgLinkDB.sync Location:
(InBatch only) InBatch\cfg\config_A
Description:
Configuration TagLinker database synchronization
file created on master server by backup server during
redundancy startup.
Usage:
Redundancy only. Created by RedMngr when the
backup batch server is started.
CfgModelDB.dat Location:
InBatch\cfg\config_A
Description:
Configuration Process Model database data file.
Usage:
Changes as modifications are made with the Process
Model Editor or by selecting the Update Configuration
menu option within the Environment Display.
CfgModelDB.dbd Location:
InBatch\cfg\config_A
Description:
Configuration Process Model database schema file.
Usage:
Does not change.
CfgModelDB.key Location:
InBatch\cfg\config_A
Description:
Configuration Process Model database index file.
Usage:
Changes as modifications are made with the Process
Model Editor or by selecting the Update Configuration
menu option within the Environment Display.
CfgModelDB.lock Location:
InBatch\cfg\config_A
Description:
Configuration Process Model database lock file
created on master server by backup server during
redundancy startup.
Usage:
Redundancy only. Created by RedMngr when the
backup batch server is started.
CfgModelDB.sync Location:
InBatch\cfg\config_A
Description:
Configuration Process Model database
synchronization file created on master server by
backup server during redundancy startup.
Usage:
Redundancy only. Created by RedMngr when the
backup batch server is started.
EnvDB.dat Location:
InBatch\cfg\config_A
Description:
Environment Editor database data file.
Usage:
Changes as modifications are made with the
Environment Editor.
EnvDB.dbd Location:
InBatch\cfg\config_A
Description:
Environment Editor database schema file.
Usage:
Does not change.
EnvDB.key Location:
InBatch\cfg\config_A
Description:
Environment Editor database index file.
Usage:
Changes as modifications are made with the
Environment Editor.
EnvDB.lock Location:
InBatch\cfg\config_A
Description:
Environment Editor database lock file created on
master server by backup server during redundancy
startup.
Usage:
Redundancy only. Created by RedMngr when the
backup batch server is started.
EnvDB.sync Location:
InBatch\cfg\config_A
Description:
Environment Editor database synchronization file
created on master server by backup server during
redundancy startup.
Usage:
Redundancy only. Created by RedMngr when the
backup batch server is started.
hinfo.dat Location:
InBatch\cfg\config_A
Description:
Storage location for History Admin details.
Usage:
Modify with the History Admin tool.
host.dat Location:
InBatch\cfg\config_A
Description:
Permits tag browsing from client applications.
Usage:
Modified by Environment Manager when started.
IALinkDB.dat Location:
(I/A Series only) InBatch\cfg\config_A
Description:
Run-time IALink database data file.
Usage:
Changed only by selecting the Update Runtime menu
option within the Environment Display.
IALinkDB.dbd Location:
(I/A Series only) InBatch\cfg\config_A
Description:
Run-time IALink database schema file.
Usage:
Does not change.
IALinkDB.key Location:
(I/A Series only) InBatch\cfg\config_A
Description:
Run-time IALink database index file.
Usage:
Changed only by selecting the Update Runtime menu
option within the Environment Display.
IALinkDB.lock Location:
(I/A Series only) InBatch\cfg\config_A
Description:
Run-time IALink database lock file created on master
server by backup server during redundancy startup.
Usage:
Redundancy only. Created by RedMngr when the
backup batch server is started.
IALinkDB.sync Location:
(I/A Series only) InBatch\cfg\config_A
Description:
Run-time IALink database synchronization file
created on master server by backup server during
redundancy startup.
Usage:
Redundancy only. Created by RedMngr when the
backup batch server is started.
LinkDB.dat Location:
(InBatch only) InBatch\cfg\config_A
Description:
Run-time TagLinker database data file.
Usage:
Changed only by selecting the Update Runtime menu
option within the Environment Display.
LinkDB.dbd Location:
(InBatch only) InBatch\cfg\config_A
Description:
Run-time TagLinker database schema file.
Usage:
Does not change.
LinkDB.key Location:
(InBatch only) InBatch\cfg\config_A
Description:
Run-time TagLinker database index file.
Usage:
Changed only by selecting the Update Runtime menu
option within the Environment Display.
LinkDB.lock Location:
(InBatch only) InBatch\cfg\config_A
Description:
Run-time TagLinker database lock file created on
master server by backup server during redundancy
startup.
Usage:
Redundancy only. Created by RedMngr when the
backup batch server is started.
LinkDB.sync Location:
(InBatch only) InBatch\cfg\config_A
Description:
Run-time TagLinker database synchronization file
created on master server by backup server during
redundancy startup.
Usage:
Redundancy only. Created by RedMngr when the
backup batch server is started.
LoggerDB.dat Location:
InBatch\cfg\config_A
Description:
Process Logger Editor database data file.
Usage:
Changes as modifications are made with the Process
Logger Editor.
LoggerDB.dbd Location:
InBatch\cfg\config_A
Description:
Process Logger Editor database schema file.
Usage:
Does not change.
LoggerDB.key Location:
InBatch\cfg\config_A
Description:
Process Logger Editor database index file.
Usage:
Changes as modifications are made with the Process
Logger Editor.
LoggerDB.lock Location:
InBatch\cfg\config_A
Description:
Process Logger Editor database lock file created on
master server by backup server during redundancy
startup.
Redundancy only. Created by RedMngr when the
backup batch server is started.
LoggerDB.sync Location:
InBatch\cfg\config_A
Description:
Process Logger Editor database synchronization file
created on master server by backup server during
redundancy startup.
Usage:
Redundancy only. created by RedMngr when the
backup batch server is started.
MaterialDB.dat Location:
InBatch\cfg\config_A
Description:
Materials Editor database data file.
Usage:
Changes as modifications are made with the
Materials Editor.
MaterialDB.dbd Location:
InBatch\cfg\config_A
Description:
Materials Editor database schema file.
Usage:
Does not change.
MaterialDB.key Location:
InBatch\cfg\config_A
Description:
Materials Editor database index file.
Usage:
Changes as modifications are made with the
Materials Editor.
MaterialDB.lock Location:
InBatch\cfg\config_A
Description:
Materials Editor database lock file created on master
server by backup server during redundancy startup.
Usage:
Redundancy only. Created by RedMngr when the
backup batch server is started.
MaterialDB.sync Location:
InBatch\cfg\config_A
Description:
Materials Editor database synchronization file
created on master server by backup server during
redundancy startup.
Usage:
Redundancy only. Created by RedMngr when the
backup batch server is started.
ModelDB.dat Location:
InBatch\cfg\config_A
Description:
Process Model database data file.
Usage:
Changed only by selecting the Update Runtime menu
option within the Environment Display.
ModelDB.dbd Location:
InBatch\cfg\config_A
Description:
Process Model database schema file.
Usage:
Does not change.
ModelDB.key Location:
InBatch\cfg\config_A
Description:
Process Model database index file.
Usage:
Changed only by selecting the Update Runtime menu
option within the Environment Display.
ModelDB.lock Location:
InBatch\cfg\config_A
Description:
Process Model database lock file created on master
server by backup server during redundancy startup.
Usage:
Redundancy only. Created by RedMngr when the
backup batch server is started.
ModelDB.sync Location:
InBatch\cfg\config_A
Description:
Process Model database synchronization file created
on master server by backup server during
redundancy startup.
Usage:
Redundancy only. Created by RedMngr when the
backup batch server is started.
RecipeDB.dat Location:
InBatch\cfg\config_A
Description:
Recipe Editor database data file.
Usage:
Changes as modifications are made with the Recipe
Editor or changed by Batch Manager during batch
processing.
RecipeDB.dbd Location:
InBatch\cfg\config_A
Description:
Recipe Editor database schema file.
Usage:
Does not change.
RecipeDB.key Location:
InBatch\cfg\config_A
Description:
Recipe Editor database index file.
Usage:
Changes as modifications are made with the Recipe
Editor or changed by Batch Manager during batch
processing.
RecipeDB.lock Location:
InBatch\cfg\config_A
Description:
Recipe Editor database lock file created on master
server by backup server during redundancy startup.
Usage:
Redundancy only. Created by RedMngr when the
backup batch server is started.
RecipeDB.sync Location:
InBatch\cfg\config_A
Description:
Recipe Editor database synchronization file created
on master server by backup server during
redundancy startup.
Redundancy only. Created by RedMngr when the
backup batch server is started.
RedCfg Location:
InBatch\cfg\config_A
Description:
Redundancy configuration file.
Usage:
Redundancy only. Created by install. May be changed
manually. Configuration changes not required during
normal operation.
RedStats.date.txt Location:
InBatch\cfg\config_A
Description:
Redundancy statistics files that provide information
of the status of batch redundancy. Structure of file
name is RedStats.current_date.txt.
Usage:
Redundancy only. Created by RedMngr during
redundancy operation.
SecurityDB.dat Location:
InBatch\cfg\config_A
Description:
Security Editor database data file.
Usage:
Changes as modifications are made with the Security
Editor.
SecurityDB.dbd Location:
InBatch\cfg\config_A
Description:
Security Editor database schema file.
Usage:
Does not change.
SecurityDB.key Location:
InBatch\cfg\config_A
Description:
Security Editor database index file.
Usage:
Changes as modifications are made with the Security
Editor.
SecurityDB.lock Location:
InBatch\cfg\config_A
Description:
Security Editor database lock file created on master
server by backup server during redundancy startup.
Usage:
Redundancy only. Created by RedMngr when the
backup batch server is started.
SecurityDB.sync Location:
InBatch\cfg\config_A
Description:
Security Editor database synchronization file created
on master server by backup server during
redundancy startup.
Usage:
Redundancy only. Created by RedMngr when the
backup batch server is started.
vista.taf Location:
InBatch\cfg\config_A
Description:
Raima Data Manager Transaction Activity File.
Usage:
If it does not exist, Raima Data Manager
automatically creates it.The name of a process LOG
file is written to the Transaction Activity File (TAF)
just before a commit and removed following the
commit in order to provide for external recovery in
the event that the lock manager fails.
HistQDB.dat Location:
InBatch\HistQ
Description:
History queue database data file.
Usage:
Changed by the History Queue Manager.
HistQDB.dbd Location:
InBatch\HistQ
Description:
History queue database schema file.
Usage:
Does not change.
histq.taf Location:
InBatch\HistQ
Description:
History Queue transaction activity file.
Usage:
If it does not exist, Raima Data Manager
automatically creates it.
dflt_HistQ Location:
InBatch\HistQ
Description:
Folder containing Default HistQDB database.
Usage:
Does not change.
To Configure the CP
1 From the FoxView process_eng or software_eng
environment display, select the top menu item, Config,
then select CIO_Config to invoke ICC.
2 From the Compound Selection dialog box, select the CP
station compound (for example, CP4001_STA) and click
OK.
The ICC main dialog box appears.
3 From the Compounds list, select the CP station
compound.
4 From the Compound functions list, select View
Blocks/ECBs in this compound.
A new dialog box shows the block name list for the
selected compound.
5 Select the block name STATION.
6 From Block/ECB Functions, select Edit all Block/ECB
Parameters.
Configuration Result
to “D:\opt\fox\ciocfg\sequenlibrary\PHASE_EXEC.s”
• Copy from “<install dir>\templates\HLBL_PHASE.s”
to “D:\opt\fox\ciocfg\sequenlibrary\HLBL_PHASE.s”
• Copy from “<install dir>\templates\SFC_PHASE.g”
to “D:\opt\fox\ciocfg\sequenlibrary\SFC_PHASE.g”
• Copy from “<install dir>\templates\SFC_PHASE.k”
to “D:\opt\fox\ciocfg\sequenlibrary\SFC_PHASE.k”
• Copy from “<install dir>\templates\FB_CONST.inc”
to “D:\opt\fox\ciocfg\sequeninclude\FB_CONST.inc”
To Configure in FoxAlert
1 A configuration file <install dir>\IA_Config\
BatchAlarmCfg.txt is provided for you to copy and paste
from when you configure the FoxAlert command button.
You must first open this file with a text editor such as
Wordpad and edit the <install dir> to point to the correct
product installation path.
2 From FoxView display, select the menu item Config >
DispalarmCfg.
3 The FoxAlert main dialog box appears. You can use it to
configure a command button for CAD display.
4 From the File menu, click Open.
5 Select the alm database named foxboro and click Open.
6 Click Save As and type the required database file name.
(for example: BatchXP). This procedure retains the
original databases included with the product.
7 On the right side of the main dialog box of the
configuration, select the Alarm Managers option, and then
click New.
8 The Alarm Manager dialog box appears.
9 Type the following parameter values:
• Alarm manager name: AM0000
• Station letterbug: XXXXXX
• Screen: Undedicated
• Alarm Manager Property Scheme: foxDefault
10 Click OK.
11 On the Display and Alarm Managers dialog box, under the
Select group, select the option User Interfaces.
12 From the list of Scheme Names, under the User Interface
group, select foxCAD, and under the Command group,
select Edit.
The User Interface Scheme dialog box appears for foxCAD,
along with the Edit dialog box.
13 In the Edit dialog box, select the unused button that you
want to configure.
The Pushbutton/Multi-State Button Editor dialog box
appears.
14 Click Edit.
5 Click Done.
6 Click Exit to exit the FoxAlert Configurator DispalarmCfg.
Index
A analog tag 93
Abort command AnalogAlarm table structure 465
phases 578 application parameters
units 573 Batch Display 58
Aborted Batch Manager 57
phase status bit 580 I/A Series Event Manager 61
unit status bit 574 I/A Series Tag Driver 60
aborting a batch 417 IBMX Service 60
Access Editor 191 InBatch Function Server 59
active transition objects 404 InBatch I/O client 58
Active-X GUI controls 597 InBatch Server 60
Actual element 125 Process Log Manager 57
Actual value parameter extension 582 Simulation Manager 57
Add Applications dialog box 545 applications
advisory alarms 585 adding instances 54
AlarmComment table structure 465 adding to environment 53
alarms assigning parameters 56
advisory 585 assigning values to parameters 56
batch 27 deleting parameters 61
critical 585 parameters, table of 57
description 585 run-time, viewing status 46
examples, phase block 585 security 539
FoxAlert subsystem, configuring 708 security requests 547
I/A Series Batch 589 starting all 48
in global output code 586 starting single run-time 49
Allocate phase in recipes 271 stopping all with Environment
Display 49
Alm Comment command button,
configuring 709 stopping single run-time 49
N Material ID 583
nesting branches 337 preact 583
NonBatchOperatorActions table Target 582
structure 468 parameter types
Not function 554 input 581
output 581
O process variables 581
OCXBATCH.OCX, see Batch Talk parameters
ActiveX Control application 57
One branch execute type 338 assigning to application 56
operands in expressions, list 553 assigning values 56
Operating System security mode 520 assigning values to application 56
operation branches, inserting 336 deleting from applications 61
operation name, changing 348 in recipes
operations input 272
deleting 341 output 272
in recipes process variable 272
description 270 passwords
inserting into recipe 331 assigning 536
loading 329 changing 32, 522, 536, 546
properties 347 ChgPwd utility, installing 545
saving 348 encryption 536
storing 327 expiration 536
validity checking 330 phantom batches
Operations Library considerations 442
editing 308 precautions 441
Operations Library dialog box 308 running 443
operations toolbar icons 324 phase block diagram
Operator Action Journal, configuring 713 I/A Series 217
Operator Stations InBatch 80
dialog box 538 phase block status diagram
operator stations I/A Series 218
description 527 phase blocks
security 527 alarms 585
OperatorActions table structure 469 components 567
operators in expressions, list 552 Control System code structure 566
output materials, changing in recipe 303 description 560
output parameters 272, 581 design guidelines 560
Output parameters, elements 124 design, unit status 574
interface, standard 216
P memory guidelines 565
parameter extensions operational flow chart 563
Actual 582 rules of operation 561
High Deviation 583 phase branch, inserting 336
High Limit 583 phase commands
Lot Code 583 Abort 578
Low Deviation 583 Hold 577
Low Limit 583 Reset 578
attributes 111 R
unit control tags 109 Ready
unit state tags 109
phase status bit 579
segments 83
unit status bit 573
Segments tab 168
recalling an expression 551
steps, basic 74
Recipe Automation Server 31
summary diagram 94
Recipe Editor
tags 84
cursor 330
transfer classes 76
dialog box 275
Transfers tab 141
components 322
units
purpose 23, 29
adding 103
Recipe Header dialog box 276
deleting 103
Recipe Procedure SFC ActiveX
units of measure 83, 171
Control 32
Units tab 102
recipe state, assigning 278
validating 185
RecipeEdit, see Recipe Editor and Recipe
workflow overview 21 Automation Server
process phases 421 recipes 267, 269, 271
Automatic 122, 421 adding output materials 302
Data 131 approvals 537
formula parameters 133 approving 310
in recipes 271 branches, deleting 344
Manual 131, 421 control recipe 265
formula parameters 133 control recipes 23
with material input parameters 422
creating 274
with material output parameters 424
creating, basic steps 274
Process Status Display 233
deleting 314
process tags 86
equipment requirements
assigning attributes 115
example 290
when to use 89 exporting 317
process variables filtering in Batch Scheduler 377
dialog box 306 filtering the recipe list 313
elements 124 finding 312
in recipes 305 formulas 268
parameters 272, 581 diagram 268
parameters, description of 124 formulas, defining 297
ProcessLog table structure 460 guidelines for developing 274
ProcessVar table structure 460 header components 266
ProcessVarChange table structure 461 header, editing 276
ProcStatus, see I/A Series ProcessStatus history 315
utility program
importing 317
programs, configuration and run-time
input materials, changing 299
summary of 28
maser recipes 23
properties, phase 349
master recipes 265
proprietary format, recipe 317
material inputs, editing 300
purge jobs, adding 682
material outputs, settings 304
multiple instances 267
operations 270