Beruflich Dokumente
Kultur Dokumente
InBatch
October, 2001
Wonderware Corporation
This document contains information for InBatch Premier edition. For information
regarding the Getting Started Guide and tutrorial for InBatch FlexFormula
edition, please visit the following URL:
http://www.wonderware.com/Products/mmi/inbatch.htm
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 the
Wonderware Corporation. 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 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 Wonderware Corporation. 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.
Trademarks
All terms mentioned in this book that are known to be trademarks or service
marks have been appropriately capitalized. Wonderware Corporation cannot attest
to the accuracy of this information. Use of a term in this book should not be
regarded as affecting the validity of any trademark or service mark.
Wonderware, InTouch and FactorySuite Web Server are registered trademarks of
Wonderware Corporation.
FactorySuite, Wonderware FactorySuite, WindowMaker, WindowViewer, SQL
Access Manager, Recipe Manager, SPCPro, DBDump, DBLoad, HDMerge,
HistData, Wonderware Logger, Alarm Logger, InControl, InTrack, InBatch,
IndustrialSQL, FactoryOffice, FactoryFocus, License Viewer, Scout, SuiteLink
and NetDDE are trademarks of Wonderware Corporation.
Contents
System Requirements ...............................................................................................1-6
Microsoft SQL Server........................................................................................1-6
InBatch Server ..................................................................................................1-6
Batch Runtime Client ........................................................................................1-6
Batch Development Client.................................................................................1-6
InBatch Program Menus...........................................................................................1-7
InBatch Server ..................................................................................................1-7
InBatch Batch Development Client....................................................................1-7
InBatch Batch Runtime Client...........................................................................1-8
Installing InBatch ....................................................................................................1-9
InBatch Server Installation ................................................................................1-9
InBatch Client Installation ................................................................................1-9
Overview of Capabilities ........................................................................................1-10
Flexible Recipes and Process Lines..................................................................1-10
Process Modeling ............................................................................................1-10
Materials Tracking Management .....................................................................1-12
Recipe Management ........................................................................................1-13
Batch Management..........................................................................................1-13
Batch History ..................................................................................................1-14
Batch Reports..................................................................................................1-14
Extensibility...........................................................................................................1-15
Managing InBatch Configurations .........................................................................1-15
InBatch Application Modules.................................................................................1-16
Configuration Modules....................................................................................1-16
Runtime Modules ............................................................................................1-17
Utility Modules................................................................................................1-18
InBatch Configuration Architecture .......................................................................1-19
The Breading Plant Process Area ...........................................................................2-22
Hardware Architecture ...........................................................................................2-22
Hardware Architecture ...........................................................................................2-23
Install the InBatch Software ...................................................................................2-23
Start InBatch Environment Display........................................................................2-24
Configuration Steps................................................................................................2-24
Model the Process ..................................................................................................2-25
Define Units ....................................................................................................2-26
Define Connections .........................................................................................2-27
Define Process Classes ....................................................................................2-28
Define Process Phases .....................................................................................2-29
Define Transfer Classes...................................................................................2-33
Define Transfer Phases....................................................................................2-34
Define Segments .............................................................................................2-35
Validate the Model ..........................................................................................2-37
Use the Tag Linker.................................................................................................2-38
Define Export Configuration ...........................................................................2-39
Perform a Simulation Export ...........................................................................2-40
Update the Runtime Databases ...............................................................................2-41
Define the Process Trains.......................................................................................2-42
Defining the Materials and Material Locations.......................................................2-43
Define Materials..............................................................................................2-44
Define Material Locations ...............................................................................2-45
Build a Recipe........................................................................................................2-46
Recipe Header .................................................................................................2-47
Define Equipment Requirements .....................................................................2-48
Define Formula Inputs.....................................................................................2-49
Construct the Recipe Procedure....................................................................... 2-51
Validate the Recipe......................................................................................... 2-54
Save the recipe................................................................................................ 2-54
Approve the Recipe for Production.................................................................. 2-55
Create an InBatch Runtime Client (InTouch) Application...................................... 2-56
Create an Operator Interface on InTouch using InBatch Wizards.................... 2-56
Define Windows ............................................................................................. 2-57
Modify Access Name ...................................................................................... 2-72
Set Initial Value for IB_TIM_ACCESS Tag ................................................... 2-73
Define Complimentary Scripts ........................................................................ 2-74
Start the InBatch Runtime System ......................................................................... 2-77
Schedule and Execute Batches ............................................................................... 2-78
From the InBatch Server................................................................................. 2-79
From the InBatch Runtime Client (InTouch)................................................... 2-80
Execute an End-of-Batch Report............................................................................ 2-81
C H A P T E R 1
Welcome to InBatch
InBatch Server
• InBatch Server (only) requires 40 MB free hard disk space.
• InBatch Server with a Batch Runtime Client requires 70 MB free hard disk
space.
• SVGA(1024X768) display and adapter w/2MB Video RAM.
Process Modeling
A batch processing plant is made up of units and connections. Units process
and/or hold materials while connections transfer materials between units.
A unit is defined as any vessel that can hold and/or process materials. Some units
have no processing capabilities, as is the case with bulk storage vessels, manual
add stations, and hold tanks. Other units have significant processing capabilities,
as is the case with most 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 are defined as the equipment, i.e. pumps, valves, separators,
condensers and flow meters, that is necessary for transferring a product from one
unit to another. Many plants have units that are connected to more that one unit
and some plants have multiple connections between the same two units.
All units that have the same processing capabilities or perform the same function
are grouped into one process class. All the connections between the same two
process classes are grouped into one transfer class. Process Classes and Transfer
Classes define a family of units and connections, respectively. The ability to group
units and connections into classes is the essence of a true flexible batch system.
Processing and transferring capabilities are defined by Phases. Each phase is an
independent action that may contain a unique set of Parameters. Parameters
configure the phase based on a recipe’s requirements. Phases can be automatically
executed by the control system. The can also be manually executed by an
operator. The execution of automatic phases is performed by the control system
using Phase Logic.
Units, Process Classes (Processes), Connections, Transfer Classes (Transfers),
and Processing Capabilities are the five main components of the Process Model.
Defining the plant processing capability is called Process Modeling and involves
the steps listed below.
1. Identify each unit and its attributes.
2. Group units into process classes.
3. Identify all connections between units.
4. Define all equipment segments and assign to connections.
5. Group connections into transfer classes.
6. Define the processing capabilities of each process class (phases and
parameters).
7. Define the transferring capabilities of each transfer class (phases and
parameters).
8. Define equipment statuses.
9. Define trains.
10. Develop phase logic.
An integral part of Process Modeling involves defining specific data points, called
Tags, for Units, Processes, Connections, and Transfers. Tags allow data to move
between the batch system and the control system. Tags must be defined prior to
configuring any of the batch system application modules. The number of tags
allowed in the batch system is only limited by the amount of mass storage in the
system.
Batch Management
Batch Management consists of scheduling batches, initializing batches,
coordinating the execution of batches with the control system, interfacing with
operators, and storing all batch activity. This functionality is achieved through the
Batch Manager, Batch Scheduler, and Batch Display programs. The final result is
a flexible, reliable, and intuitive approach to the management of a batch process.
Scheduling: The Batch Manager’s scheduling capability is that of dispatching
batches that are ready to run to plant floor operators. Scheduling involves the
manual entry of the batch identification, master recipe, batch size, and Train
(Process Line) into the Batch Scheduler. Once entered, the batch can be
initialized.
Initialization: Each batch must be initialized before it is executed. The
initialization process involves validation of 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’s equipment requirements are satisfied by the
Train, and verifying that the Process Model database is compatible with the
recipe.
Batch and Unit Management: Batch Manager directs and supervises the
execution of each batch. The Batch Manager interprets recipes and enables the
control system. Based on the recipe’s procedure, blocks of control software,
referred as phase blocks, are signalled to execute by the Batch Manager. Phase
block control logic, located in the control system, is responsible for controlling
the process. Prior to enabling each phase block, the Batch Manager verifies that
the phase block is ready to be executed. If so, phase parameter values are
downloaded to the block, then the block is started.
Batch Manager also interfaces with Batch Display programs. The Batch Display
programs provide operators with information on all batches initialized and/or
executing in the system. Through these displays, operators can put a batch or
phase in hold, as well as restart and abort batches or phases. In addition,
operators can change phase parameter values, acknowledge the execution of
phases, review phase interlock statuses, and enter comments while the batch is
executing.
The Batch Manager coordinates the usage of process units for each batch. The
Batch Manager is capable of running a large number of batches simultaneously.
Each batch is a separate entity and contends along with other batches to possess
the process units it needs. Batch Manager allocates ownership of units to batches
as units become available, and releases units when the batch no longer requires
the unit.
Flexible batch systems using controllers must take the approach in which the
supervisory workstation becomes an active participant in executing a batch. The
reason for this is that unit management is very sophisticated in a flexible batch
system. Most controllers do not have the ability to program a unit manager
capable of interpreting and executing the recipe procedures that can be
constructed in the batch control system.
A Master Recipe uses classes of process units, not specific units. This means
phases pertain to a class of units not a specific unit. When the Batch Manager
executes a Master Recipe, each phase encountered is converted into a unit specific
phase. This process is called Master Recipe to Partial Control Recipe conversion.
The Train assigned to produce the batch specifies all the units that can be used.
The Batch Manager automatically converts the Master Recipe to a Control Recipe
based on the units found in the Train.
History: Batch Manager captures and stores all processing and operator activity
during the execution of a batch.
Batch History
InBatch uses Microsoft SQL Server as its historical repository to provide open
and easy access to all batch history data
The Batch Management System is responsible for writing all information related
to the production of a batch to the history database. This includes events, process
data, production information, material usage, operator comments, operator
actions, and equipment used.
Batch Reports
InBatch uses Seagate Crystal Reports Professional for report development. This
provides a flexible and open platform so that the user can easily build custom
reports. Retrieval of historical data in the form of reports is provided by the
runtime Reporting System. Reports can be automatically triggered during the
execution of a batch or at the end of a batch. InBatch is supplied with a set of
predefined reports.
Extensibility
InBatch offers a rich set of ActiveX objects and API functions for integrating
external applications such as ERP or scheduling systems and allowing exchange
of formulas/recipes, materials and production results. InBatch also uses Microsoft
SQL Server as its historical repository to provide open and easy access to all batch
history data. These interfaces make it easy to integrate with ERP and Advanced
Planning Systems, allowing InBatch to be a key link in a successful supply chain
management initiative.
Configuration Modules
Environment Editor (EnvEdit)
(Required) The Environment Editor is used to define the batch configuration and
runtime applications that are to be executed.
Utility Modules
Phase Logic Testing Tool (PhaseLogic)
(Optional) The Phase Logic module permits individual phase execution
independent of any batch operation.
LinkDB Imp/Exp
EnvDB
Lock Manager
(lm_tcp)
BatchSched
(OCXBatch) InSQL
InfoMngr BatchMngr
BatchDspl
(OCXBatch, LogMngr
SFCOCX)
SQLServer
TIMBatch
TIMSec
TIMFunc
TrainEdit UnilinkMngr
ModelDB SysTagMngr
LogDB
IBHist
SimMngr
IBCli IBServ
LinkDB TIMDB
WindowMaker/Viewer
IO Server InControl
SFC Batch InBatch Wizards InBatch Tag
Alarm/Event
ActiveX ActiveX and Script Browser
Interface (.dlls)
Object Object Functions Server
C H A P T E R 2
This chapter guides you through the process of developing actual InBatch Server
and Client applications using a generic Breading Plant process as a reference.
The purpose of the tutorial is to show you the ease with which you can configure
InBatch and the power that InBatch provides as a design, engineering and
simulation tool. Additionally, it familiarizes you with all other InBatch
capabilities associated with configuration and control system logic, material
management, recipe management, history, reporting, and operator interface. As
you work through this tutorial, you will develop a complete understanding of what
InBatch is and how it is configured.
This tutorial assumes that the user has a properly configured, operational
hardware system and strong working knowledge of InTouch.
Contents
The Breading Plant Process Area
Hardware Architecture
Hardware Architecture
Install the InBatch Software
Start InBatch Environment Display
Configuration Steps
Model the Process
Use the Tag Linker
Update the Runtime Databases
Define the Process Trains
Defining the Materials and Material Locations
Build a Recipe
Create an InBatch Runtime Client (InTouch) Application
Start the InBatch Runtime System
Schedule and Execute Batches
Execute an End-of-Batch Report
The Breading Plant Process Area
InBatch Server
"MERCURY"
Windows NT 4.0
InBatch InBatch
Development Client Runtime Client
"MIXER1" "MIXER2"
Windows NT 4.0 Windows NT or 95
Configuration Steps
1. Model the Process
2. Use the Tag Linker
3. Update the Runtime Databases
4. Define the Process Trains
5. Defining the Materials and Material Locations
6. Build a Recipe
7. Create an InBatch Runtime Client (InTouch) Application
8. Start the InBatch Runtime System
9. Schedule and Execute Batches
10. Execute an End-of-Batch Report
Model the Process
Double-click the ModelEdit icon on the Environment Display window. The
Process Modeling Editor main window is displayed.
Define Units
Units are equipment entities that hold, process and/or package materials.
Select the Units tab to display the Units editor. Use the Units editor to enter the
units as shown below.
Define Connections
Connections are defined by a source and a destination unit. If materials can move
between two units, then the connection must be defined. The way in which
materials move is not important at this time.
Select the Connections tab to display the Connections editor. Use the
Connections editor to enter the connections as shown below.
Define Process Classes
A Process Class is a group of one or more units that perform the same functions.
Select the Processes tab to display the Processes editor. Use the Processes editor
to enter the process classes and assign all of the units as shown below.
Process Class Name Assigned Units
BulkTks Bulk1, Bulk2
Mixers Mixer1, Mixer2
HoldTks Hold1, Hold2
Define Process Phases
Only define process phases for the classes of equipment that actually process
material. In our example, only the Mixers process material. The BulkTks and
HoldTks classes do not.
Select the Mixers process class and then click the Phases… button from the
Processes tab dialog. This displays the Edit Phases dialog. Enter the process
phases shown below.
Phase Name Phase Type
Mix Automatic
ManAdd Manual
Instruct Manual
In the Save History pane, select the Control/Status Activity and Parameter
Status check boxes for each phase in the Mixers class. If you do not set these
check boxes, then phase events and parameters will not be stored in the history
database.
Note You must select the Change button following any phase modifications.
Create Phase Control/Status Tags
All Automatic phases must have Phase Control and Status tags. These are the
tags that would ultimately be linked to the control system memory/register
addresses.
There is only one automatic phase in the Mixes class. Select the Mix phase from
the Phases list and then click Phase Control/Status... The Edit Phase
Control/Status dialog is displayed. Click Select All and then click Create Tags.
All tags needed to control and monitor the status of the Mix phase will be
automatically created.
Define Formula Parameters
Formula parameters are used to provide phases with information they need to do
their job. Parameter values are defined in the recipe and written to the control
system when the phase is executed. The recipe procedure determines when each
phase is executed.
Select the appropriate phase from the Phases list, then click the Formula
Parameters… button. The Edit Formula Parameters dialog will be displayed.
Enter the following parameters for each of the defined process phases.
Phase Parameter Parameter Type
Mix Speed_% Process Variable
Time_Min Process Variable
ManAdd Qty_Kgs Input
Configure both Mix formula parameters as follows:
1. Create tags for the Target and Actual elements by enabling the check box for
each and selecting the Create Tags button.
2. Set the Edit Allowed check box for the Target element.
3. Set the Enable Display check box for the Actual element.
Configure the ManAdd formula parameter as follows:
1. Set the Enable Display check box for the Target and Material ID elements.
2. Set the Edit Required check box for the Actual and Lot Code elements.
Note You do not have to create tags for the ManAdd phase.
Define Transfer Classes
A Transfer Class is a group of one or more connections that perform the same
functions. Within a Transfer Class, all of the source units are in the same process
class and all of the destination units are in the same process class. The source and
destination process classes can be the same.
Select the Transfers tab to display the Transfers editor. Use the Transfers editor
to enter the transfer classes and assign all of the connections as shown below.
Transfer Class Name Source Process Destination Process
Bulk_Mix BulkTks Mixer
Mix_Hold Mixer HoldTks
Speed_%: 10
Time_Min: 4
Ask(“Test OK?”)
Material: CB1000
Qty_Kgs: 100%
Validate the Recipe
Select the File/Validate… menu option from the Recipe Editor main window to
check for configuration errors. Correct any discrepancies.
Note The recipe must be valid in order to schedule and execute.
below.
Create an InBatch Runtime Client (InTouch)
Application
This section will describe the steps required to create the batch client application
using InTouch. Several windows will be created that use wizards, ActiveX
objects, and InBatch tags to represent the batch activity.
Note There are two alternatives to making batch tags available within the
InTouch application. The first involves importing the .csv file that was created by
selecting the File/Simulation Export… menu option in the Tag Linker into
InTouch using the DBLOAD utility. The second makes use of the tag browsing
and remote referencing capabilities on InTouch. The latter option will be used in
this example.
Insert the Batch Questions (w/Close) wizard in the center of this window with
the font settings of Courier New, 8pt, Bold.
Insert the Equipment Allocation wizard in the center of this window with the
Insert the Errors wizard in the center of this window with the font settings of
Insert the Batch Scheduler/Dispatcher wizard at the top of this window with the
font settings of Courier New, 8pt, Bold.
To the right of the Batch Comments wizard, add two button wizards using the
directions provided earlier with font settings of Courier New, 8pt, Bold.
Double-click each of the buttons and configure each to have the following label
and action assignments.
Label Button Action Window
Name
Batch Display Window Show: Show ‘Window Name’; Batch
Display
Equipment Window Show: Show ‘Window Name’; Equipment
Note The Batch Display window will be defined later. This step will have to be
completed after the Batch Display window is defined.
Save the Schedule window.
The Schedule window should look similar to the one shown below.
Create a new full-screen, Replace window named Batch Display as illustrated
below.
Insert the Active Phase List wizard at the top of this window with the font
settings of Courier New, 8pt, Bold.
Double-click the schedule wizard and change the List Size to 3.
Insert the Phase Parameter List wizard below the Active Phase List wizard with
the font settings of Courier New, 8pt, Bold.
Double-click the schedule wizard and change the List Size to 3.
Insert the Phase Instructions wizard below the Phase Parameter List wizard with
the font settings of Courier New, 8pt, Bold.
Double-click the schedule wizard and change the List Size to 3.
Insert the Phase Message Display wizard to the right of the Phase Instructions
wizard with the font settings of Courier New, 8pt, Bold.
To the right of the phase wizards, add a column of six Batch/Phase/Misc Button
wizards with font settings of Courier New, 8pt, Bold.
Double-click each of the buttons and configure each to have the following label
and action assignments.
Label Button Action
Phase Start Phase Start
Phase Hold Phase Hold
Phase Restart Phase Restart
Phase Abort Phase Abort
Ack On Entry Phase: Ack On Entry
Ack On Exit Phase: Ack On Exit
Add another Batch/Phase/Misc Button wizard with font settings of Courier New,
8pt, Bold.
Double-click each of the buttons and configure each to have the following label
and action assignments.
Label Button Action Window
Name
Schedule Window Show: Show ‘Window Name’; Schedule
Add the InBatch SFC Control to the bottom of the window and position
accordingly.
Save the Batch Display window.
The Batch Display window should look similar to the one shown below.
Modify Access Name
A default Access Name is created when an InBatch wizard is used in an
application. This access must be modified to point the InTouch batch client
application to the InBatch Server for runtime wizard data. Select the
Special/Access Names… menu option to display the Access Names dialog.
Modify the IB_TIM_TAGS access as shown below.
Set Initial Value for IB_TIM_ACCESS Tag
There are several tags created in the InTouch Tagname Dictionary when an
InBatch wizard is used in an application. One tag in particular must be modified
to point the InTouch batch client application to the InBatch Server for runtime
wizard data. Select the Special/Tagname Dictionary… menu option to display the
Tagname Dictionary. Modify the initial value of the IB_TIM_ACCESS_TAG
Window Script
Window: Batch Display
Condition Type: On Show
Script: #InBatchSFCCtrl1.Host = "mercury";
Select the Initialize/All menu option from the Batch Scheduler main window to
change the status of all of the batches from Open to Ready.
From the InBatch Server
Double-click the BatchDspl icon on the Environment Display window. The Batch
Display main window is displayed.
Select the Windows/Schedule… menu option from the Batch Display main
window. This displays a list of available batches. Select a batch from the list. Start
the batch by clicking the Batch Start button.
Monitor the execution of the batch, answering any question, entering data for
manual phases and acknowledging phases when necessary.
From the InBatch Runtime Client (InTouch)
Make sure the InTouch WindowViewer application is running and displaying the
Schedule window.
Enter the information shown below and then click Add.
Campaign: C001
Lot: L002
Batch: 1
Recipe: CB1000
Quantity: 5000
Train: Mixer 1 Train
Click the Init Batch button to initialize the new batch. The batch status will
change from Open to Ready.
Select a batch from the list at the bottom of the Schedule window and click the
Batch Start button. After the batch status changes to Run, click the Batch
Display button to activate the Batch Display window.
Monitor the execution of the batch, answering any question, entering data for
manual phases and acknowledging phases when necessary until the batch is done.
Execute an End-of-Batch Report
Double-click the ReportDspl icon on the Environment Display window. The
Report Display main window is displayed.
Select the File/Open… menu option from the Report Display main window. This
displays a list of available reports. Select the B_Journal.rpt file.
Upon opening, the search criteria dialog will be displayed. Enter the information
shown below to generate a report for the batch executed.
After defining the search criteria, the report will be displayed containing all batch
information.