Recipe Editor User Guide
Recipe Editor User Guide
ATTENTION: Identifies information about practices or circumstances that can lead to personal injury or death, property damage, or economic loss.
Attentions help you identify a hazard, avoid a hazard, and recognize the consequence.
IMPORTANT Identifies information that is critical for successful application and understanding of the product.
BURN HAZARD: Labels may be on or inside the equipment, for example, a drive or motor, to alert people that surfaces may reach dangerous
temperatures.
ARC FLASH HAZARD: Labels may be on or inside the equipment, for example, a motor control center, to alert people to potential Arc Flash. Arc Flash will
cause severe injury or death. Wear proper Personal Protective Equipment (PPE). Follow ALL Regulatory requirements for safe work practices and for
Personal Protective Equipment (PPE).
Rockwell Automation recognizes that some of the terms that are currently used in our industry and in this publication are not in
alignment with the movement toward inclusive language in technology. We are proactively collaborating with industry peers to
find alternatives to such terms and making changes to our products and content. Please excuse the use of such terms in our
content while we implement these changes.
Chapter 1
Sequential Function Chart SFC components ........................................................................................ 23
SFC steps .................................................................................................... 23
Transition expressions.............................................................................. 24
Data types................................................................................................... 25
Transition operators ................................................................................. 26
Parameter expression functions .............................................................. 26
Linked elements ........................................................................................ 27
SFC limitations .......................................................................................... 28
SFC execution ............................................................................................ 29
Null procedures ......................................................................................... 30
Synchronize execution of steps ................................................................. 31
Arbitration .................................................................................................. 31
Subarbitration ............................................................................................ 33
Add a null procedure ..................................................................................36
Timer steps ................................................................................................. 37
Timer step hold behavior ........................................................................... 37
Recipe comments ...................................................................................... 38
Chapter 2
Table-based recipes overview Recipe structure icons ............................................................................... 40
Table view transition expressions ............................................................ 40
Parallel structures....................................................................................... 41
Complex parallelism example ................................................................... 41
Simple parallelism example ...................................................................... 42
Chapter 3
Recipe creation Unit-based recipes ..................................................................................... 45
Chapter 4
Recipe formulations Formulation parameters ........................................................................... 73
Add a recipe formulation........................................................................... 74
Delete a recipe formulation ....................................................................... 75
Chapter 5
Build a Sequential Function Add a branch structure to an SFC ............................................................. 77
Chart Add transitions to an SFC ......................................................................... 78
Define a step ............................................................................................... 78
Link SFC components ................................................................................79
Remove a link from an SFC .......................................................................79
Chapter 6
Build a table Insert steps into a table ............................................................................. 91
Add a parallel step to a table ...................................................................... 91
Add step before and after parallel ............................................................ 92
Define a step ...............................................................................................93
Remove a step from a table ........................................................................93
Chapter 7
Bind Expressions Expression operators expanded ............................................................... 96
Expression data types ................................................................................ 96
Operands .................................................................................................... 96
Expression validation ................................................................................97
Chapter 8
Parameter types in a recipe Recipe properties ....................................................................................... 99
Recipe parameters ..................................................................................... 99
Assign recipe formula parameters ........................................................... 99
Report parameters .................................................................................. 100
Assign report parameters ....................................................................... 100
Aggregate report values ........................................................................... 101
Phase parameters ..................................................................................... 101
Operation sequence parameters ............................................................. 101
Recipe parameters ....................................................................................102
Defer parameters......................................................................................102
Formula values and report limits ............................................................ 103
Material recipe parameters ..................................................................... 104
Material report parameters ..................................................................... 105
Formula Value Entry Report.................................................................... 105
Chapter 9
Parameter expressions and Evaluate parameter expressions .............................................................. 112
reports Validate parameter expressions .............................................................. 112
Parameter expression override ................................................................ 112
Report parameter expressions ................................................................ 112
Override a report expression ....................................................................113
Expression value configurations..............................................................113
Configure expression values ....................................................................113
Parameter expression operators ............................................................. 114
Parameter expression functions ............................................................. 115
Chapter 10
Phase link groups Message partner phases ........................................................................... 117
Message partner application.................................................................... 118
Link group rules ....................................................................................... 118
Phase communication ............................................................................. 119
Create a phase link group ........................................................................ 119
Delete a phase link group.........................................................................120
Chapter 11
Recipe approval process Configure recipe approval ....................................................................... 124
overview Approve a recipe ....................................................................................... 125
Revert a recipe approval .......................................................................... 126
Automatic system signoff ........................................................................ 128
Chapter 12
Recipe versioning overview Recipe versioning...................................................................................... 131
How recipe versions are named............................................................... 131
Restrictions for recipe versions............................................................... 133
Enable recipe versioning option ............................................................. 133
Disable recipe versioning option ............................................................ 134
Create a recipe version ............................................................................. 134
Recipe version control.............................................................................. 135
Recipe version history .............................................................................. 137
Obsoleted recipe versions ........................................................................ 137
Enable recipe versioning or approval ..................................................... 138
Chapter 13
Security authority overview Security authority configuration ............................................................. 141
Chapter 14
Complete and maintain recipe Verify recipe ..............................................................................................145
What gets verified? .................................................................................. 146
SFC validation........................................................................................... 146
Run SFC validation................................................................................... 147
Set allowable SFC permutations ............................................................. 148
SFC validation error types ....................................................................... 148
Parallel activation of segment ................................................................. 149
Unreachable terminal step ...................................................................... 150
Parallelism with terminal step ................................................................ 150
Token cannot reach terminal step .......................................................... 151
Unreachable linear segment .................................................................... 153
Release Recipe as Step option ................................................................. 154
Release recipe to production ................................................................... 155
Rebuild the recipe directory .................................................................... 155
Recipe maintenance ................................................................................. 155
Find Recipe References overview ............................................................ 156
Find recipe references.............................................................................. 156
Page setup ................................................................................................. 157
Generate reports option........................................................................... 157
Print a working set of recipes .................................................................. 158
Print a single recipe.................................................................................. 159
Remove a recipe ........................................................................................ 160
Translation ................................................................................................ 160
Chapter 15
Import and export recipes Import recipes ...........................................................................................163
Select a directory ...................................................................................... 164
Select a SQL Server database ................................................................... 164
Export recipes ........................................................................................... 165
Import conflicts ........................................................................................ 166
Resolve duplicate name conflict .............................................................. 166
Resolve recipe basename conflict............................................................ 167
Resolve recipe version conflict ................................................................ 167
Resolve conflicts rebuilding directory .................................................... 167
Import and export recipe restrictions .................................................... 167
Appendix A
Recipe formats RDB format .............................................................................................. 169
Add a Windows user to the MasterRecipeAuthor and
Appendix B
Import/Export error issues Improperly secured recipes...................................................................... 173
Verification results ................................................................................... 173
Remove area model conflict .................................................................... 173
Reinstate an obsolete procedure ............................................................. 174
Verification warnings and errors............................................................ 175
Invalid recipe folder or path .................................................................... 175
Index
About this manual This manual provides usage instructions for the FactoryTalk Batch Recipe
Editor. It iis one of a set of related manuals that describe installing,
programming, and operating the FactoryTalk Batch system.
Legal Notices Rockwell Automation publishes legal notices, such as privacy policies, license
agreements, trademark disclosures, and other terms and conditions on the
Legal Notices page of the Rockwell Automation website.
You can view a full list of all open-source software used in this product and
their corresponding licenses by opening the oss_license.txt file located your
product's OPENSOURCE folder on your hard drive. This file is divided into
these sections:
• Components
Includes the name of the open-source component, its version number,
and the type of license.
• Copyright Text
Includes the name of the open-source component, its version number,
and the copyright declaration.
• Licenses
Includes the name of the license, the list of open-source components
citing the license, and the terms of the license.
The default location of this file is:
Additional resources This table is a comprehensive documentation list for the FactoryTalk® Batch
products from Rockwell Automation.
FactoryTalk Batch Components Installation and Provides information and procedures for FactoryTalk Batch system installation.
Upgrade Guide Includes information for FactoryTalk Batch Material Manager, FactoryTalk Event
(BATCH-IN002) Archiver, and associated FactoryTalk Batch Client and Server components.
FactoryTalk Batch View Quick Start Guide Provides information about using FactoryTalk Batch View to create, view, and
(FTBVS-QS001) command control recipes, acknowledge prompts and signatures, view equipment
phases and diagnostic information, and view profile information.
FactoryTalk Batch View HMI Controls Quick Start Provides a general overview of FactoryTalk Batch View HMI Controls.
Guide
(BATCH-QS001D)
FactoryTalk Batch eProcedure® Getting Results Explains the basics of FactoryTalk Batch eProcedure.
Guide
(BWEPRO-GR011)
FactoryTalk Batch Getting Results Guide Introduces the basics of automated batch manufacturing and the FactoryTalk Batch
(BATCH-GR011) product components.
FactoryTalk Batch Material Manager Getting Results Introduces the basics of FactoryTalk Batch Material Manager.
Guide
(BWMTR-GR011)
User Guides
Resource Description
FactoryTalk Batch Material Editor User Guide Provides access to information and procedural instructions required to configure
(BWMTR-UM001) materials and the containers to hold them. The material data is stored in the material
database, which is used to create material-based recipes. This information is
intended as a reference for formulators.
FactoryTalk Batch Equipment Editor User Guide Provides information on creating and maintaining an equipment database (area
(BATCH-UM004) model). The area model is available to all other FactoryTalk Batch programs, including
the Recipe Editor, Batch View, and Phase Simulator.
FactoryTalk Batch PhaseManager™ User Guide Describes the integration of the FactoryTalk Batch software with the Studio 5000
(BATCHX-UM011) Logix Designer® application and the Logix 5000™ family of controllers.
The integration simplifies the configuration and maintenance of the FactoryTalk
Batch automation system, provides better communication between the FactoryTalk
Batch Server and the Logix 5000 controller, and significantly reduces the
programming effort required to develop the phase logic code that resides in your
Logix 5000 controller.
FactoryTalk Batch Recipe Editor User Guide Provides instructions on using FactoryTalk Batch Recipe Editor to create and
(BATCH-UM006) configure master recipes for use in batch automation. The interface is based on IEC
61131-3 sequential function charts to organize recipes graphically into procedures, unit
procedures, operations, and phases. Build recipes using either the SFC format or a
table-based format.
FactoryTalk Batch View HMI Controls User Manual Provides details about using FactoryTalk Batch View HMI Controls to monitor and
(FTBVS-UM003) interact with the production process within a FactoryTalk View SE Display Client.
FactoryTalk Batch View User Manual Provides information and procedural instructions for using FactoryTalk Batch View in
(FTBVS-UM002) a modern and intuitive portal into a comprehensive batching solution for effective
operations, leveraging its own web server using HTML5 technology to provide
connectivity into a FactoryTalk Batch Server.
FactoryTalk Event Archiver User Guide Provides information and instructions specific to the FactoryTalk Event Archiver.
(BATCH-UM012) Intended for use by system administrators and production supervisors.
Administrator Guides
Resource Description
FactoryTalk Batch Administrator Guide Provides instructions for configuring security and services, and implementation and
(BATCH-UM003) use of components not typically accessed or used by batch operators, such as the
FactoryTalk Batch Server.
FactoryTalk Batch eProcedure Administrator Guide Provides procedures specific to FactoryTalk Batch eProcedure, such as implementing
(BWEPRO-UM011) security.
Included are instructions for tasks specific to FactoryTalk Batch, such as configuring
security and services to support FactoryTalk Batch eProcedure. Provides instructions
on the implementation and use of components not typically accessed or used by
batch operators, such as the FactoryTalk Batch Server.
FactoryTalk Batch Material Manager Administrator Provides information and instructions specific to FactoryTalk Batch Material Manager.
Guide Intended for use by system administrators and database administrators.
(BWEPRO-UM011)
Reference Guides
Resource Description
FactoryTalk Batch Material Server API Reference Provides access to information regarding the interface between the FactoryTalk Batch
Manual Material Server and the FactoryTalk Batch Material Editor and FactoryTalk Batch. It is
(BWMTR-RM001) intended to be used as a reference information by custom interface developers.
FactoryTalk Batch PCD Programming Reference Provides information and instructions about the FactoryTalk Batch PCD interface
Manual design. It is intended to be used as a reference guide for PCD programmers.
(BATCH-RM004)
FactoryTalk Batch Server API Reference Manual Provides information regarding the interface between the FactoryTalk Batch Server
(BATCH-RM003) and FactoryTalk Batch View — the Server Application Programming Interface (API). It is
intended to be used as a reference guide by custom interface developers.
FactoryTalk Batch System Files Reference Manual Provides the technical information for configuration and maintenance of a
(BATCH-RM005) FactoryTalk Batch system. It can be used as a reference information for
implementation engineers and system administrators.
FactoryTalk Batch eProcedure Instruction File Includes information about the building of manual nstruction files for manual phases
Design Reference Manual in the equipment database This information is intended to be used as a reference by
(BWEPRO-RM001) instruction file authors.
Rockwell Automation recognizes that some of the terms that are currently
used in our industry and in this publication are not in alignment with the
movement toward inclusive language in technology. We are proactively
collaborating with industry peers to find alternatives to such terms and
making changes to our products and content. Please excuse the use of such
terms in our content while we implement these changes.
Recipe Editor
Use FactoryTalk Batch Recipe Editor to create and configure master recipes
for use in batch automation. A master recipe is a type of recipe that accounts
for equipment capabilities and may include process cell-specific information.
Procedural levels:
Recipes use the ISA S88.01 Batch Control Standards for configuration and
display, which define these levels for the procedural model:
The recipe phase is the lowest level within a recipe. The phase provides an
interface to basic control. The recipe phase maps directly to the engineered
logic on the plant floor. Base an added phase on a phase already defined in the
area model using the FactoryTalk Batch Equipment Editor. Based on the unit
requirements specified in the recipe, a phase in the FactoryTalk Batch
Equipment Editor maps to a specific phase (an instance of a phase class). This
phase is mapped (using tags) to equipment phase defined in the engineered
logic.
An operation consists of one or more recipe phases, and it must run within a
single unit in the area model. Combine multiple operations into a single unit
procedure if each operation runs in the same unit in the area model. Unit
procedures combine to create a procedure, the highest recipe level.
Procedures can run across multiple units, allowing for unit-to-unit transfers.
Open Recipe Editor Follow these instructions to open the FactoryTalk Batch Recipe Editor.
4. If the user is not found, a Logon Message opens. Select OK to close this
message, check the user credentials, and retry or enter other
credentials.
5. If Security Authority is applied to the area model, and there is a
mismatch between the security authority identifier (SAI) in the area
model and the (SAI) in the current FactoryTalk Network Directory, this
error message opens:
The FactoryTalk Batch Recipe Editor displays the Procedure View and Recipe
Construction panes.
Set Recipe Editor options Configure the general FactoryTalk Batch Recipe Editor options, such as
enabling/disabling support for dynamic unit allocation and parallel
operations, as well as configuring the pane size in the FactoryTalk Batch
Recipe Editor window. Selected options apply to all recipes saved after the
options are applied.
Tip: FactoryTalk Batch procedures can have parallel unit procedures and operations can have parallel
equipment phases, regardless of this options setting.
To refer to the area model, open the FactoryTalk Batch Equipment Editor.
1. Select View > Options. The Options dialog box opens.
These options are available in the Options dialog box:
Item Description
The Procedure View Pane contains a hierarchical list of the current recipe
components. Selecting a component from the list highlights the
corresponding step in the Recipe Construction pane.
Tip: To resize the panes in the FactoryTalk Batch Recipe Editor, select and drag the splitter bar
between the two panes to the desired size.
The Recipe Construction pane provides a way to construct and view recipe
structures using a sequential function chart (SFC) or a table. The SFC view
and the Table view display exclusively. Tile the Recipe Construction pane to
display both views at the same time. Selecting a component within either view
highlights the corresponding item in the Procedure View pane.
Tip: When using tiled views, selecting a recipe step in one view highlights the corresponding item in
the other view. The selected step in the active view highlights in dark blue. The step in the inactive
view highlights in light blue. Additionally, the status bar displays the word Table or SFC accordingly.
Recipe Editor toolbar The FactoryTalk Batch Recipe Editor toolbar contains buttons used to
perform FactoryTalk Batch Recipe Editor commands. You can reposition and
detach the toolbar from the window by dragging it to a new position. When
the toolbar is detached from the window, moved or hide by right-clicking it
and selecting Hide or Move from the shortcut menu.
This table describes the FactoryTalk Batch Recipe Editor toolbar buttons and
their corresponding keyboard shortcuts:
Graphic Name Description Keyboard
Shortcut
New Top Level Creates a new procedure, unit procedure, or operation. Ctrl+N
Grid Snap Displays a grid in the Recipe Construction pane, and Ctrl+G
aligns elements of the SFC to the grid when moved in the
Recipe Construction pane.
Invoke Equipment Opens the FactoryTalk Batch Equipment Editor. None
Editor
View as Table Displays the Table View within the Recipe Construction Shift+Q
pane.
View a SFC Displays the SFC View within the Recipe Construction Shift+C
pane.
Tile Views Displays the Table View and the SFC View within the Shift+Z
Recipe Construction pane.
Show/Hide Page Displays the recipe print layout in the SFC View. None
Boundaries
Recipe construction toolbox The Recipe Construction toolbox contains the command buttons for creating
and editing steps, transitions, text boxes, and links in the recipe construction
pane. Reposition or detach the toolbox from the window dragging it to a new
position. When the toolbox is detached from the window, you can move or
hide it. Right-click the toolbox and select the appropriate option from the
shortcut menu. Press Ctrl+Q to add or remove the toolbox from the
FactoryTalk Batch Recipe Editor window.
The toolbox command buttons and the keyboard shortcut keys:
Graphic Name Description Keyboard
Shortcut
Selection Tool Selects a step in the Procedure View pane, Table view, or SFC view. Select Shift+P
transitions in the SFC view. Select and drag the selection pointer over
several SFC elements to select a group of elements.
Step Tool Adds a new step to the SFC. Shift+S
Link Tool Links recipe components in the SFC view. Select a step and drag the cursor Shift+L
from the step to a transition to link the two components.
Remove Link Tool Unlinks recipe components in the SFC view. Select a step and drag the Shift+R
cursor from the step to a transition to unlink the two components.
Text Box Tool Adds a text box for recipe comments. Shift+D
Add Step Adds a step and transition after the selected recipe element. (Valid for Shift+A
initial, sequential, and parallel steps, as well as transitions.)
Insert Step Inserts a step and transition before the selected recipe element. (Valid for Shift+I
sequential, parallel, and terminal steps, as well as transitions.) Shift+Insert
Add Parallel Adds a step in parallel with the selected step. (Valid for sequential and Shift+E
parallel steps only.)
Add Branch Adds a step and additional transitions to form a branch structure. (Valid for Shift+B
regular steps only.)
Remove Step Removes a step from the SFC structure, automatically removing the Shift+M
transitions and rearranging the SFC. (Valid for sequential and parallel steps
only.)
Insert Step Before Inserts a step before a parallel structure. Select a step within the parallel Shift+O
Parallel structure to enable the tool.
Add Step After Adds a step after a parallel structure. Select a step within the parallel Shift+F
Parallel structure to enable the tool.
Create Material Loop Creates a material loop for the selected material enabled step. The step Shift+N
must have the preceding and following elements attached before creating
the material loop.
Undo Material Loop Removes a material loop just created, before any other editing takes place. Shift+X
Recipe Editor example To continue the example in the FactoryTalk Batch Recipe Editor, you create
two operations, Reaction_1 and Clean_In_Place, which are shown below. The
Reaction_1 operation transfers Material A into the reactor, agitates the
contents for 15 minutes at 5 RPM, and then dumps the contents into Storage
Unit A. The Clean_in_Place operation transfers water into the reactor, agitates
the contents for 60 minutes at 7 RPM, and then dumps the contents as Waste
Water.
For more information regarding how FactoryTalk Batch applies the ISA S88.01
concepts, contact your Rockwell Sales Representative. For a copy of the S88.01
document, write to: ISA, 67 Alexander Drive, P.O. Box 12277, Research
Triangle Park, NC 27709
See also
Start the sample FactoryTalk Batch Phase Simulator
Recipe creation overview A common best practice is to design a recipe top-down and build it
bottom-up, focusing on high-level procedures that accurately depict the
process used to make the product. In determining where to segment the
process into Unit Procedures and Operations, consider breaking the process
into reusable modules.
Recipe Creation
For recipe creation:
Recipe Completion
To complete recipe creation:
Recipe Maintenance
For recipe maintenance:
• Procedure
• Unit Procedure
• Operation
• Phase
Transition expressions Transitions are the criteria that must be met before the recipe continues to
the next logical step. Transition expressions are evaluated for syntax at the
time they are created and are designated in the SFC with the name Tn, where
n represents a unique number. The expression associated with each transition
follows the traditional expression evaluation for the arithmetic operators (+, -,
*, and /), the logical operators (AND, OR, and NOT), and the functions (ABS,
MOD, TRUN, RND, and RDUP). The expression must always evaluate to either
TRUE or FALSE.
Data types The data types supported are integer, real, string, and enumeration.
Tip: Unsigned data types are not supported.
Integer: 423
Real: 423.123456789012
Transition operators Transition expressions support these operators. The precedence of the
execution depicts from highest to lowest. An operator with a higher
precedence executes before an operator of lower precedence.
Transition Operator Description
() Expressions within parentheses evaluates before expressions outside
of parentheses.
NOT, unary minus Logical NOT user, and "-".
*, /, AND Multiplication, division, and logical AND.
+, -, OR Addition, subtraction, and logical OR.
<, <=, >, >= Less than, less than or equal to, greater than, and greater than or equal
to.
=, < > Equal to, and not equal to.
Parameter expression Functions determine how the expression parser handles Real and Integer
data types used in a parameter expression. This table lists available functions
functions and their behavior on positive and negative values:
Function Description Behavior: Behavior:
Value Result
RND( ) Round – Numeric values round to the 6.7 7
nearest integer. 6.5 7
6.3 6
-6.7 -7
-6.5 -6
-6.3 -6
RDUP( ) Round up – Numeric values round to the 6.7 7
next larger integer. 6.5 7
6.3 7
-6.7 -6
-6.5 -6
-6.3 -6
Examples
SFC Example #1
Decision logic (OR path) allows an SFC to flow in one direction or another
depending on the choice made by the transition statement. A single
horizontal line connects the two statements. Create the decision construct of
an SFC by selecting two parallel steps and connecting them to the step above
them with two separate transitions.
SFC Example #2
Loop logic (REPEAT path) allows a process to flow from beginning to end and
back again to a previous step where it repeats the loop. Create the loop
construction of an SFC by joining a transition to a previous step.
Material Loop tool . Loop logic allows a process to flow back to a previous step where it
repeats the loop. The system automatically includes a null procedure in the material loop for
rebinding.
SFC limitations Use the FactoryTalk Batch Recipe Editor to build an SFC of any size. For very
large procedures, divide into multiple procedures each with fewer steps.
Null procedures A null procedure contains no parameters and is not associated with a phase
on the plant floor. Use null procedures to follow the step-transition-step
pattern in a sequential function chart (SFC) and enable the SFC to do
arbitration that is more flexible. This creates otherwise impossible SFC
structures, such as separating consecutive transitions.
Add null procedures at the unit procedure, operation, and phase levels. Null
procedures automatically provided in the Unit Procedure Select, Operation
Select, and Select Phase dialog boxes; there is no need to create null phases in
the FactoryTalk Batch Equipment Editor.
Synchronize execution of One powerful application of null procedures is to synchronize the execution
of steps. In this picture, the CHARGE_A_CLS:1 step and the
steps CHARGE_B_CLS:1 step execute in parallel. The execution of the
CHARGE_B_CLS:1 step is does not occur until the CHARGE_A_CLS:1 step has
already charged 1500 liters. To accomplish this timing, place a null procedure
at the beginning of the parallel structure. A new transition creates before the
CHARGE_B_CLS:1 step. This new transition contains a transition condition
that allows the CHARGE_B_CLS:1 step to execute only after the
CHARGE_A_CLS:1 step has charged 1500 liters.
See also
Arbitration on page 31
Subarbitration on page 33
Arbitration Use Null procedures to regulate the arbitration of resources. A step cannot
release any allocated resources it owns until the transition after the step
becomes true. When this step is part of a parallel structure, a delay in
releasing allocated resources may occur while the step waits for the other
steps within the parallel structure to complete. Similarly, if the step is a shared
phase, the phase is not be released until the other parallel steps complete.
This image shows the same parallel structure with the addition of two null
phases after the AND Divergence. This changes the timing just enough to
allow one side to process before the other. The FactoryTalk Batch Server can
then sub-arbitrate the resources required for ADD_CREAM:1 and
ADD_CREAM:2.
Add a null procedure Add a null procedure instructions are similar to insert a step. The NULL
option is always available in the Unit Procedure Select, Operation Select, and
Select Phase dialog boxes.
4. Select OK.
See also
Insert steps into an SFC on page 87
Define a step on page 78
Timer steps Use timer steps to create a step that causes a branch in a recipe to pause for a
specified period or to create a step that monitors the amount of time a parallel
step executes. The TIMER option is always available in the Unit Procedure
Select, Operation Select, and Select Phase dialog boxes.
See also
Timer steps on page 37
Recipe comments Use recipe comments to give written instructions to operators, share notes
with other engineers, or access a reference. Recipe commenting associates
data with a step, transition, or the entire recipe. The comment is viewable at
design and at run time.
The comment, and its associated information, is a text box. Above each text
box, the assigned reference name displays as a C followed by a number. View
added SFC text boxes in the SFC views of FactoryTalk Batch View and
FactoryTalk Batch View HMI Controls.
When you build a recipe in the FactoryTalk Batch Recipe Editor you can
represent the logic flow of the recipe using a sequential function chart (SFC)
or a table. Table-based recipes provide a mechanism for creating simple
recipes that do not require a complex recipe structure or complex transition
expressions. Additionally, they allow you to view and edit all recipe
parameters without having to navigate between steps.The logic flow of the
recipe is represented using a sequential function chart (SFC) or a table.
Table-based recipes provide a mechanism for creating simple recipes that do
not require a complex recipe structure or complex transition expressions.
Additionally, they allow viewing and editing of all recipe parameters without
having to navigate between steps.
Steps are executed starting with row one, and proceeding downward until the
end of the recipe. Steps located within a single parallel structure execute at the
same time. Every step within the Table view displays the name of the
Procedure, Unit Procedure, Operation, or Phase represented by the step. All
parameters associated with the selected step display as the column header.
The parameter value displays below the parameter name and to the right of
the step name. To edit parameter values, select the table cell where the
parameter displays and enter a new value (if enumerations are created for the
selected parameter, a list containing the enumerations is provided).
Every step within the Table view displays the name of the Procedure, Unit
Procedure, Operation, or Phase represented by the step.
The Table view can contain any of these recipe structure icons:
Graphic Name Description
Simple Step Represents a single step within the recipe path.
Begin Parallel Step Represents the first step in a parallel structure containing multiple
steps.
Parallel Step Represents the step located within a parallel structure containing
multiple steps.
End Parallel Step Represents the final step in a parallel structure containing multiple
steps.
Parallel structures
The FactoryTalk Batch Recipe Editor allows creation of simple parallel
structures using the Table view. These structures can have multiple steps in
parallel, but cannot have more than one step located on the same path. That is,
all steps located within the parallel structure must be preceded by the same
AND divergence and followed by the same AND convergence.
More complex parallel structures created using the SFC view are considered
undetermined when viewed in the Table view. Recipe structure icons do not
display for the entire recipe level in which the parallel structure is located.
Table View:
Table View:
Tip: If parallel steps require the same dedicated resource, the FactoryTalk Batch Server automatically
determines how the resources allocate among steps when the batch runs (called subarbitration). If
parallel steps occur just after an AND divergence or just before an AND convergence, add null
procedures to the recipe in order for batches to run successfully.
Recipe creation
Before building an SFC or Table structure to define the logical flow of a recipe,
first create the recipe in FactoryTalk. The recipe creation process includes:
See also
Recipe procedure levels on page 70
Recipe unit requirements on page 69
Unit-based recipes A unit-based recipe includes the specific units used for the recipe. Recipe
creation requires a unit-based recipe. Unit-based recipes use static binding
and bind to a specific unit instance defined in the area model.
Unit-based recipes also include the specific unit instances used for the recipe.
Define unit instances in the area model. During recipe creation, the recipe
author specifies the required unit instance. As a result, unit-based recipes use
a binding method called static binding. Static binding means that the recipe
runs in only one unit instance. At batch creation time, unit-based recipes
automatically bind to the specified unit instance.
Unit class-based recipes Create class-based recipes for a unit class rather than for a specific unit
instance. Class-based recipes are useful if a unit class contains many unit
instances and a particular recipe runs in most of those unit instances. The use
of class-based recipes reduces the number of recipes created and maintained.
Create only one recipe per unit class rather than one recipe for each unit
instance. At batch creation time, the operator assigns the specific unit
instance in which the class-based recipe runs, or FactoryTalk Batch Server
availability determines assignment of the unit.
When creating a recipe, the phases that are not common to all the unit
instances built from a particular unit class are available for selection. When
adding a non-common phase to the recipe, the FactoryTalk Batch Recipe
Material-based recipes Material-based recipes contain steps that specify the materials needed to run
the recipe without requiring a definition of the equipment that is required to
supply those materials. Each phase in the FactoryTalk Batch Equipment
Editor contains configurations for material additions and distributions.
Material-based recipes, unit classes, and the FactoryTalk Batch Material
Editor drastically reduced the number of different recipes needed.
Material class-based Material class-based recipes contain steps configured to utilize any of several
similar materials from a common class of materials. Configure material
recipes classes and specific materials in FactoryTalk Batch Material Editor.
Dynamic Unit Allocation Dynamic Unit Allocation is a method for binding specific units to class-based
unit procedure-level recipes that are contained within a procedure-level
recipe. Dynamic Unit Allocation allows different unit procedures with the
same unit requirements within the procedure. Define any downstream units
required by unit instances and unit classes.
Unit requirement name A unit requirement name is a user-defined name assigned to a unit class with
a defined binding method. When creating the procedure-level recipe, the
recipe author assigns the appropriate unit requirement name to each unit
procedure step in the recipe. Assigning a unit requirement name solves
potential complications when using Dynamic Unit Allocation.
• PREMIX_A
• XFR_UP1_PREMIX
Additionally, there are five unit instances of the PREMIX_A_CLS unit class
and unit procedures, PREMIX_A and XFR_UP1_PREMIX that can bind to any
of the five unit instances. But they must bind to the same unit instance.
If implementing Unit Attribute Binding, the recipe author can further define
the binding requirements and preferences. The author can configure binding
to units meeting specific criteria, for example, warmest available unit,
capacity restrictions, or non-agitator units.
Downstream unit A downstream unit is a unit that follows another specified unit during batch
execution. Downstream unit requirements mirror the linking of units
requirements represented in the area model. Specifying required downstream units allows
control of batch flow and to make sure to select the appropriate unit during
unit-binding. Configure the area model and recipes as follows to enforce these
flow paths:
• Link the units in the area model using the FactoryTalk Batch
Equipment Editor.
• Define downstream unit requirements in the recipe using the
FactoryTalk Batch Recipe Editor.
When these configurations are in place, the FactoryTalk Batch Server enforces
these flow paths when binding units to a class-based unit procedure or when
displaying a unit selection list to the operator for unit binding.
Enable Dynamic Unit Dynamic Unit Allocation is enabled in FactoryTalk Batch Recipe Editor.
Allocation
To enable Dynamic Unit Allocation
1. From the View menu, select Options to display the Options dialog box.
2. Select Support Dynamic Unit Allocation.
3. Select Apply.
Tip: The allocation setting applies to ALL procedure-level recipes created, edited, or saved.
Dynamic Unit Allocation If Dynamic Unit Allocation is not enabled, you must allocate a unit to every
unit procedure contained within the procedure-level recipe during batch
affects binding creation (a batch creates when it is on the batch list in the FactoryTalk Batch
View or custom HMI application). This presents complications if this
procedure-level recipe takes 30 days to complete from the moment the first
unit procedure is initiated until the last unit procedure runs to completion. If
some or all of the unit procedures contained within the procedure are
class-based, it may be difficult to predict, at batch creation time, which units
are available when needed.
Dynamic Unit Allocation solves this problem because it allows the bound unit
to be defined when the unit procedure is ready to run, rather than when the
batch is created. Late binding postpones the unit definition until the unit
procedure requires it to run.
• Unit procedure steps (also called dynamic unit allocation) support two
types of late unit binding: First Available and Prompt binding.
• Material phase steps support two types of late phase binding:
Automatic and Prompt binding.
Binding methods These four binding methods are options for class-based unit procedures:
Criteria for unit selection When automatically selecting a unit for binding, the FactoryTalk Batch Server
tries to use the unit that the recipe can acquire first. The unit selected must
meet these criteria:
• The acquired unit must belong to the unit class of the unit procedure
step.
• Recipes can configure upstream, downstream, or both upstream and
downstream dependencies that define a series of unit classes that a
recipe requires as a recipe executes. The acquired unit supports the
flow path to other units.
To open a recipe:
1. Select Open to display the Open [Type] Recipe dialog box, where
[Type] is the recipe storage type (binary, XML, or RDB, configured in
the FactoryTalk Batch Equipment Editor Server Options dialog box).
2. From the Recipe Name list, double-click a recipe to open it, or select
the appropriate recipe and select Open.
See also
Recipe header data on page 64
Cannot open recipe error If Security Authority is enabled for a recipe, and there is a mismatch between
the Security Authority Identifier (SAI) it contains and the SAI in the current
message FactoryTalk Network Directory, this error message opens:
Create operations and unit Define unit requirements for unit procedures and operations when creating
the recipe. Only indicate the specific unit instance or unit class used for this
procedures particular recipe.
4. Select either the Class Based or Instance Based unit requirement. The
Class Based group box shows the unit classes defined in the area
model as class-based. The Instance Based group box shows the unit
instances defined in the area model as unit-based.
If supporting Dynamic Unit Allocation, Bind Requirements and Bind
Preferences are enabled.
5. When binding materials, select either Inventory or Configuration. The
Factory Talk FactoryTalk Batch Server and Material Server determines
the appropriate set of binding candidates at runtime.
• By Inventory: Containers assigned to a unit must have material in
them.
• By Configuration: Containers assigned to a unit can have zero
quantity of material in them.
See also
Binding requirements on page 60
Edit unit procedure Edit the unit requirements within a unit procedure or operation at any time.
requirements
To change operation/unit procedure unit requirements:
1. Select the appropriate recipe level. Double-click the unit procedure or
operation to edit. Make sure it displays in the Recipe Construction
pane.
2. From the Recipe menu, select Unit Requirements. If not using the unit
procedure or operation in a higher level recipe, the appropriate Unit
Requirement dialog box opens.
3. Select Class Based or Instance Based and then determine the unit class
or unit instance from the appropriate list. If the unit procedure or
operation has been used in a higher level recipe, a warning message
displays indicating what higher level recipes needs to be modified the
unit requirements are changed. Select Proceed to update affected
recipes.
4. Select OK to return to the Procedure View pane.
Tip: If modifying the unit requirements for a unit procedure or operation used in a higher
level recipe, then make the required adjustments to the unit requirements of higher level
recipes. If not making corrections, the Released to Production check boxes clears for higher
level recipes.
Create a procedure When creating a procedure, indicate all unit instances and unit classes used
within the procedure. If the Support Dynamic Unit Allocation option is
enabled in the View > Options dialog box, each unit instance or unit class
must have a unit requirement name assigned when used in a procedure.
To create a procedure:
1. Select New . The New dialog box opens.
2. Select Procedure and select OK. The Create Procedure dialog box
opens.
3. Enter recipe information and select OK. Procedure Identifier is the
only required box.
• Procedure Identifier. The unique name that displays when working
with a recipe in the FactoryTalk Batch View. It is also used as the file
name when the recipe is saved. Follow methodologies for assigning
product identification codes. The Procedure Identifier can contain
letters (A-Z), numbers (0-9), and underscores ( _ ). For Procedures,
the Procedure Identifier can begin with either a letter or a number.
For Unit Procedures and Operations, it must begin with a letter.
5. Type a unique name in the Name box. The name can contain
alphanumeric characters (A through Z, 0 through 9), an underscore (_),
or a colon (:), but it must begin with an alphanumeric character.
Any unit procedure mapped to this unit requirement name uses the
same unit to which this unit requirement name is bound. Bind the unit
requirement name to the unit class or to a unit instance.
6. Select Class Based or Instance Based to enable the corresponding
group box.
7. Select the required unit class or unit from the appropriate list.
8. If adding Class Based requirements, select the appropriate binding
method from the Binding Method list.
9. If needed, add applicable Bind Requirements and Bind Preferences.
10. In the Available Downstream Unit Requirements list, select the unit
requirement name for the unit that is downstream from the unit
requirement being defined and select the right arrow. The unit
requirement is added to the Selected Downstream Unit Requirements
list.
Unit requirement name The unit requirement name is a label and acts as a lookup table for the
FactoryTalk Batch Server. When a recipe is on the Batch List and the server
example encounters the unit requirement name, it looks up all the unit classes (or unit
instances) mapped to the unit requirement name.
For example, a plant has two mixers that used to run one recipe. When the
recipe runs, the operator or the FactoryTalk Batch Server (depending on the
binding method) must pick which mixer to use. In the area model, these
mixers are each assigned a unit instance (MIXER_1 and MIXER_2) from the
same unit class (MIXER). In the recipe, create a unit requirement name
(MIXERS) configured to the MIXER unit class, with the binding method at
batch creation. When the recipe is on the Batch List, the FactoryTalk Batch
Server encounters the label MIXERS, which tells it that piece of equipment is
required for this recipe. The server looks for all the unit instances of the unit
Any unit procedure, including its subordinate operations, mapped to this unit
requirement name uses the specified unit class and the associated binding
method. Because recipes using dynamic unit allocation require that all unit
procedures use a unit requirement name, assign a unit requirement name to
all instance-based unit procedures and define the binding method used as
Static.
Change procedure unit If Support Dynamic Unit Allocation is enabled, edit unit requirements within
a procedure at any time. If disabled, the Unit Requirement dialog box is not
requirements available at the procedure level. Remove a unit requirement from a procedure
at any time, as long as no steps within this procedure define this unit
requirement.
Binding requirements Bind requirements define subsets of class-based unit procedures and
operations. Configure subsets as one of these options:
See also
Binding preferences on page 61
Create binding expressions on page 63
Configure binding Once the appropriate custom Unit Attribute definitions, assignments, and
configurations are complete in the FactoryTalk Batch Equipment Editor,
requirements define the bind requirements in the FactoryTalk Batch Recipe Editor.
Tip: Any global unit attributes list automatically and are view-only. Configure global unit
attributes in the FactoryTalk Batch Equipment Editor.
4. Select Add Requirement. A new row displays containing the unit
procedure/operation name and boxes for the bind Type and
Description.
5. Configure the Type and Description columns with the applicable bind
requirements.
Tip: The Description information changes based on the Type selected. If the Type is an
Expression, select Browse to open the Unit Binding Expression Builder.
6. Select OK twice to return to the Procedure View Pane.
See also
Binding preferences on page 61
Create binding expressions on page 63
Binding preferences A bind preference is an object that evaluates against an instance of a Unit
Class in order to sort the legal bind targets for a Unit Requirement into a
most preferred order. A bind preference can specify a preferred Phase or Unit
Attribute, an expression to minimize or maximize, or a Phase or Attribute to
avoid. The priority number indicates the order of evaluation for the
FactoryTalk Batch Server.
Configure these preferences in recipes as using one of these options:
See also
Smart binding on page 59
Configure binding preferences on page 62
preferences
To configure binding preferences:
1. Open a new or existing unit procedure or operation recipe.
2. From the Recipe menu, select Unit Requirements to display the Unit
Requirement dialog box.
3. Select Bind Preferences to display the Bind Preferences for Unit
Requirement: [CLASS_NAME] dialog box.
4. Select Add Preference. A new row displays containing the unit
procedure/operation name and drop-down boxes for the Bind Type
and Description.
Tip: The Description information changes based on the Type selected. If the Type is an
Expression, select browse to open the Unit Binding Expression Builder.
6. Select OK twice to return to the Procedure View Pane.
See also
Create binding expressions on page 63
Create binding expressions When selecting one of the Expression types as the Type of bind preference or
requirement, define that expression in the Unit Binding Expression Builder
dialog box.
Tip: Binding requirements and binding preference expressions do not support parameters with
deferred values or expression values.
2. From the Type list, select the type of expression, and then select
browse to the right of the Description to display the Unit Binding
Expression Builder dialog box.
See also
Bind Expressions on page 95
Recipe header data Header data is general information about the recipe. The Header Data dialog
box contains:
Item Description
Procedure Identifier The unique name that displays when working with a recipe in the FactoryTalk Batch
View. It is also used as the file name when the recipe is saved. Follow methodologies
for assigning product identification codes.
The Procedure Identifier can contain letters (A-Z), numbers (0-9), and underscores ( _ ).
For Procedures, the Procedure Identifier can begin with either a letter or a number. For
Unit Procedures and Operations, it must begin with a letter.
Version Number Legacy, user-set version number (not related to the Recipe Versioning feature
introduced in FactoryTalk Batch version 12). Manually update this version number as
desired.
Version Date Defaults to today's date, cannot be changed.
Author The name of the individual that created the recipe.
Approved By The name of the individual who approved the recipe.
Product Name The product name the recipe produces.
Product Code A short label that uniquely identifies the product.
Add recipe header data Use this procedure to add recipe header information to a recipe.
1. With the appropriate recipe level open in the FactoryTalk Batch Recipe
Editor, select Header Data . The Header Data dialog box opens.
Type the required data (Procedure Identifier, Version Number, and
Author) in the Header Data dialog box.
Recipe storage After building the recipe, save the recipe by selecting Save. The recipe is saved
in the location and format defined in the FactoryTalk Batch Equipment
Editor Server Options dialog box.
If recipes are stored using binary files, the recipes save separate files
according to the recipe level:
Copy recipe options Copy recipes by using the Save As function or using the backup directory.
When selecting a procedure level or unit procedure level recipe and the Save
As function is used, only the selected recipe level (procedure or unit
procedure) saves with a new name. Recipe Approval steps and their states do
not carry over to the new copy.
IMPORTANT Any lower level recipes (unit procedure, operation, or phase) are not copied with the
selected recipe level. Any changes made to those lower levels modify the original
version. To modify the original versions, perform a Save As on each of the lower level
recipes.
In this example, performing a Save As on the procedure level saves a new copy
of that procedure only. The new procedure still points to the original unit
procedures, operations, and phases. If changing a parameter value on a phase
in the copied recipe, that parameter value changes in the original recipe. The
same applies to the operations and unit procedures; all changes affect the
original recipe.
Copy recipe with backup Use this procedure to copy a recipe using the backup directory.
• Procedure
• Unit Procedure
• Operation
• Phase
Procedure-level recipes contain steps called unit procedures. Unit
procedure-level recipes contain steps called operations. Operation-level
recipes contain steps called phases. Because of this hierarchical structure of
the S88.01 Procedural Model, plan recipes from the top down, but build
recipes from the bottom up. First, create the operation, then create the unit
procedure, and lastly create the procedure.
If a recipe is run as a single unit (no unit-to-unit transfers are involved), then
building a recipe as an operation may be adequate. If the recipe intends to
operate across multiple units, create a procedure containing a unit procedure
for each unit involved. Each unit procedure may consist of one or more
operations.
Recipe formulations
Formulation parameters
Recipe formulation parameters change the input of a recipe formula to
quickly change the production line from one recipe variant to another, such as
vanilla to chocolate ice cream.
• The formulation value must be within the Min and Max ranges defined
in the Master recipe parameter.
If the formulation value is out of range, recipe verification fails. Open
the Formulation Parameters dialog box to review any out of range
values. A recipe with an out of range Min and Max value can still be
saved.
If the Min and Max values of a phase change to values that cause the
recipe parameter values to be out of range, the phase step parameters
update to the new value(s), the origin is updated to the new value(s),
which breaks the deferral, and the value(s) for the formulation
parameters remain the same.
• The formulation value must correspond to the data type defined in the
Master recipe parameter:
• Integers: Numeric values only.
• Real: Numeric values, with a decimal space as needed.
Add a branch structure to Add a branch structure to an SFC using the Add Branch tool, which creates a
an SFC new step, a new transition preceding the step, and a new transition following
the step. The new preceding transition contains the transition condition
FALSE and the new following transition contains the transition condition
STEP.STATE=COMPLETE.
Tip: Due to the variation and complexity of SFC branch structures, it is necessary to redefine one or
both transitions.
1. Use the Selection Tool to select the step on which the new
branch structure is to border.
2. Select Add Branch . A new step creates on the SFC and outlines in
blue (indicated by the dashed lines). A new transition precedes the new
step, and a new transition follows the new step. Additionally, the SFC
structure automatically rearranges to make room for the new
elements. One of these dialog boxes opens, based on the recipe level:
Select Phase, Operation Select, or Unit Procedure Select. Make the
appropriate selection and select OK.
Define a step Newly added steps are UNDEFINED. Only valid lower level recipes are used in
the step definition. When a process for a step is selected, that process is
assigned to that particular step in the recipe, and the step is marked with the
process name. Redefine a step at any time.
b. The Alias list contains a list of all units defined in the procedures
unit requirements.
a. If this unit runs in parallel with other units, and if each of the units at
this level must acquire in order to initiate this level of the recipe, then
select Acquire unit prior to starting unit procedure.
c. Select the appropriate unit procedure to associate with this step. Or,
select New Unit Procedure to create a new unit procedure.
d. Select OK.
Remove a link from an SFC Follow these instructions to remove a link from an SFC.
See also
Recipe construction toolbox on page 19
Assign a transition After adding a transition to the SFC, assign a transition expression.
expression
To assign a transition expression:
1. Double-click a transition in the SFC view. The Transition Expression
Builder dialog box appears.
See also
Transition expressions on page 24
Remove a step from an SFC Remove a step from an SFC using the Selection tool.
Create material loops If the SFC contains a material-enabled step, create a material loop that allows
the step to automatically rebind when a feed is not completed. Because
material loops disable the ability to create complex recipe structures, add
them after the SFC is set up with AND and OR convergences and divergences.
For example, to create three material equipment phases in parallel, create the
three parallel recipe phases first, and then add the material loop.
SFC without a material rebinding loop SFC after a material rebinding loop was added around the
material-enabled step MBR_ADD:1
Recipe comments Use recipe comments to give written instructions to operators, share notes
with other engineers, or access a reference. Recipe commenting associates
data with a step, transition, or the entire recipe. The comment is viewable at
design and at run time.
The comment, and its associated information, is a text box. Above each text
box, the assigned reference name displays as a C followed by a number. View
added SFC text boxes in the SFC views of FactoryTalk Batch View and
FactoryTalk Batch View HMI Controls.
3. Use the selection tool to add the required information inside the text
box. When finished typing the text, select outside the box. The text box
resizes to accommodate the comment. If needed, use the Selection
Tool to edit existing text.
Tip: The maximum number of characters contained in a text box is 1024. If more capacity
(space) is required for a recipe comment, use additional text boxes and associated them with
the step or transition.
See also
Recipe construction toolbox on page 19
Associate recipe comments When a text box is created, the default is a general recipe procedure
comment. The associated information section is blank.
2. Release the button, and the bottom portion of the text box displays the
associated step or transition name.
Tip: A text box can only be associated with one step or transition. Linking a text box to a step
or transition that is already associated to another element results in assigning the most
recently associated step or transition name.
See also
Recipe construction toolbox on page 19
comments
To disassociate a recipe comment from a step or transition
1. Select Remove Link Tool , select inside the text box, and drag to
the associated step or transition. This step can be performed in
reverse order with the same result.
2. The associated step name is removed from the text box and now
associated with the entire recipe.
Tip: If a step or transition associated with a text box is deleted, the text box becomes
associated with the entire recipe procedure and the association label is blank.
See also
Recipe construction toolbox on page 19
In this SFC, each set of parallel steps is requesting the same phase.
• The first set of steps after the AND Divergence, ADD_CREAM:1 and
ADD_CREAM:2, require a set of null procedures before them so
subarbitration can work. Without the null procedures, the batch goes
into a HELD state before it reaches these steps.
• The FactoryTalk Batch Server automatically subarbitrates for the
second set, ADD_EGG:1 and ADD_EGG:2.
• The third set, AGITATE:1 and AGITATE:2, requires a set of null
procedures before the AND Convergence so subarbitration can work.
• The Add Step tool creates a new step after the selected recipe element.
• The Insert Step tool creates a new step before the selected element.
If required, a new transition automatically creates for the new step and a
default common transition expression automatically configures. If a new
transition is not required, the existing transition modifies to reflect the new
step.
Tip: Add material-enabled phases to operations just like other phases. When adding a
material-enabled phase to the recipe, define the material parameters.
4. Repeat Steps 1 through 3 until all of the required steps are on the SFC.
Tip: The word UNDEFINED displays inside the step until configured.
Build a table
The creation of a table involves the addition and configuration of steps to the
table structure. Add steps to the table and then define the steps appropriately.
Tip: While in the Table view, the active step is highlighted in dark blue and Table is displayed on the
status bar at the bottom of the screen when the Table view has focus. Delete a selected step in the
table by pressing the Delete key.
Tip: The word UNDEFINED displays inside the step until it is configured.
Tip: For parallel steps that request the same resource, the FactoryTalk Batch server
determines how the resources are allocated through the subarbitration process. If parallel
steps require the same resource to occur just after an AND divergence or just before an AND
convergence, add null procedures to the recipe in order for batches to run successfully.
1. Select the parallel step that is to run in parallel to the new step.
2. Select Insert Step Before Parallel . A new UNDEFINED step is
created before the selected parallel step and is highlighted in blue. One
of these dialog boxes opens, based on the recipe level: Select Phase,
Operation Select or Unit Procedure Select.
3. Make the appropriate selection and select OK.
4. Select the parallel step that runs after the new step.
5. Select Add Step After Parallel . A new UNDEFINED step is
created after the selected parallel step and highlighted in blue. One of
these dialog boxes opens, based on the recipe level: Select Phase,
Operation Select or Unit Procedure Select.
Define a step
Newly added steps are UNDEFINED. Only valid lower level recipes are used in
the step definition. When a process for a step is selected, that process is
assigned to that particular step in the recipe, and the step is marked with the
process name. Redefine a step at any time.
b. The Alias list contains a list of all units defined in the procedures
unit requirements.
a. If this unit runs in parallel with other units, and if each of the units at
this level must acquire in order to initiate this level of the recipe, then
select Acquire unit prior to starting unit procedure.
c. Select the appropriate unit procedure to associate with this step. Or,
select New Unit Procedure to create a new unit procedure.
d. Select OK.
Bind Expressions
Use the Unit Binding Expression Builder to build bind requirement and bind
preference expressions. If the bind requirement or preference type is
Expression, selecting browse next to the Expression box displays the
Unit Binding Expression Builder dialog box. The Unit Binding Expression
Builder dialog box contains a tree view in the left pane. The tree view shows
Recipe Header and Unit Attribute data used to build an expression.
Select Recipe Header, a list of recipe header parameters displays in the list
view (in the middle). The Recipe Header names map to the same boxes
defined within a Recipe Header.
Create or edit an expression by typing directly in the Expression Builder text
box, select items in the list view and enumerations view, or select various
operators. The operator buttons of the Expression Builder are always enabled.
The selected operator is inserted into the expression at the current cursor
position and displayed in the Expression Builder text box.
Tip: If you want the result of the expression to be an Integer, the values used to build the expression
must be Integers — Real is not compatible with an Integer. However, using division in an expression
always results in the value being presented as a Real number.
Real: 423.123456789012
String: The string constant must be in quotes: "READY".
Operands
Operands used within a binding expression can reference Recipe Header
data, Unit Attributes, and constants. This table illustrates examples of
allowable expression entities and the required syntax.
Expression Entity Expression Syntax Example
Recipe Header data [Recipe Header item] [VERSION_NUMBER]
Global Unit Attribute Unit Attribute Name CAPACITY
Constant 100
Expression validation
Although an invalid expression cannot be created, a previously valid
expression may become invalid through subsequent changes elsewhere in the
area model. When the Edit Global Unit Binding Requirements dialog box is
invoked all binding expressions are re-validated. If any current expressions
have become invalid due to subsequent changes, an error message opens and
the dialog displays an asterisk beside each invalid expression.
Validation rules:
• An expression must resolve to either TRUE or FALSE and meet the
criteria:
• An expression must contain at least one operator (+ (addition), -
(subtraction), * (multiplication), / (division), = (equals), > (greater
than), < (less than), <= (less than, or equal to), >= (greater than, or
equal to), <> (not equal to), Not, And, and Or.
Tip: OR transitions fire if at least one side of the expression is TRUE.
• Phase parameters
• Operation sequence parameters
• Recipe parameters
Recipe properties Use the Procedure Properties dialog box to configure parameters and reports
for recipe procedures and steps. There are two tabs on the Procedure
Properties dialog box – Parameters and Reports.
Recipe parameters Recipe formula parameters provide flexibility when creating recipes. Use
recipe parameters in transition conditions or to substitute for lower-level
phase or recipe parameters. Create a recipe parameter for Operation, Unit
Procedure, or Procedure recipe levels.
Recipe parameter values assign as follows:
• If the operation is the highest level recipe for the batch, operation
recipe parameter values assign when the operation step is added to a
unit procedure-level recipe or at batch creation.
• If the unit procedure is the highest level recipe for the batch. unit
procedure recipe parameter values assign when the unit procedure
step is added to a procedure-level recipe or at batch creation.
• Procedure-level recipe parameter values always assign at batch
creation because this is the highest possible recipe level for the batch.
A recipe formula parameter is a parameter specific to a recipe. A parameter
can be used to pass values from one level of a recipe to the next lower level. A
recipe formula parameter is configured in the FactoryTalk Batch Recipe
Editor on a procedure or operation step. Recipe parameters can be deferred to
recipe formula parameters.
See also
Assign recipe formula parameters on page 99
Assign recipe formula Use these instructions to assign recipe formula parameters on the Procedure
Properties dialog box, Parameters tab.
parameters
Report parameters Use report parameters in transition conditions or to substitute for lower-level
phase or recipe parameters. Create a report parameter for Operation, Unit
Procedure, or Procedure recipe levels. Reports on operation, unit procedure,
and procedure recipes accumulate data from their child steps to aid report
generation activities. Report values are calculated and recorded in the batch
event journal when the state of the procedure is Complete, Aborted, or
Stopped.
Assign report parameters Use these instructions to assign report parameters on the Properties dialog
box Reports tab.
Phase parameters
When adding recipe phases to an operation-level recipe, specify the formula
values for its associated phase parameters. Recall that a recipe phase links to
an equipment phase configured in the area model. The recipe phase
parameters originate from the parameters defined in the FactoryTalk Batch
Equipment Editor for the associated equipment phase. Therefore, the recipe
phase formula value parameters are the phase parameters defined for the
associated equipment phase in the area model. These parameters pass data
directly to the process connected device (PCD).
• Specify them in the FactoryTalk Batch Recipe Editor for the recipe
phase at recipe creation time.
• Specify them prior to the execution of the recipe phase in a running
recipe after batch creation (done most often with an operator prompt).
• Specify them as a parameter expression.
• Defer them to a recipe parameter, which allows defining at batch
creation time.
Recipe parameters
Recipe parameters are parameters associated with the recipe as a whole, not a
particular phase. Recipe parameters:
Defer parameters
Define the values of the highest level recipe parameters within a batch at
batch creation time. For example, assume:
See also
Recipe parameters on page 102
If control str configured for the phase class, the first item in the Parameters
values area is named CONTROL_STRATEGY and the Value column for this
item contains a list of configured control strategies. Only the parameters and
reports associated with the selected control strategy display. Select the
appropriate control strategy before configuring parameters and report limits.
When configuring parameters, the parameter values may be assigned as
literal values or deferred to another parameter at a higher level in the recipe.
Tip: Materials and material classes are configured in the FactoryTalk Batch Material Editor. Use the
same recipe to change back and forth between a material-specific recipe and a material class-based
recipe by changing the MATERIAL and MATERIAL_CLASS parameters.
Container Specifies the method used to bind the material-enabled phase to a container.
Binding area Automatic: The FactoryTalk Batch Server selects the appropriate container based
(material-enable upon the container associations configured in the area model and the material
d phase only) specification.
Prompt: The operator is prompted to choose the container and phase to which the
phase is to be bound.
Feed Type area The selection available is dependent upon the phase parameter values defined in
(material-enable the area model.
d phase only) If the phase is an addition (material is added to a recipe), Addition is selected and
cannot be edited.
If the phase is a distribution (material is added to inventory), Distribution is
selected and cannot be edited.
If the phase is configured as both, specify the material feed type associated with
this step. The Max and Min values adjust accordingly.
Many aspects of recipe configuration are dependent upon accessing data from the material database
using the FactoryTalk Batch Material Server. If the Material Server is not available, the MATERIALS,
CONTAINERS, and MATERIAL CLASS enumeration sets are recreated with the NULL_MATERIAL,
NULL_CONTAINER, and NULL_CLASS, respectively. reconfigure the materials after the server becomes
available.
Report Limits area
Name The parameter name. (view only)
ID The number, unique to the phase that identifies this parameter. (view only)
Type The parameter data type. Valid types include: Real, Integer, Enumeration, and
String. (view only)
Accumulate Displays the type of accumulation for the report as defined in the phase class in
the area model. (view only)
Verification The type of verification method used for the parameter. This method sets the
Method limits and policies for verifying report values (view-only).
Limit Calculation The equation type used to calculate the limit. There are three ways to calculate this
limit:
Absolute: Absolute value for the parameter.
Percentage: Target Parameter + (Target Parameter * Percentage)
Relative: Target Parameter + Value (view-only)
Target The recipe parameter used in calculating the limit when the Limit Calculation is
Parameter Percent or Relative. (view-only)
LLL The Low-Low-Low limit for the parameter (Real, Integer). This is only enabled if the
Verification Method is High-High-High/Low-Low-Low.
L The Low limit for the parameter (Real, Integer). This is disabled if the Verification
Method is No Limits.
H The High limit for the parameter (Real, Integer). This is disabled if the Verification
Method is No Limits.
HH The High-High limit for the parameter (Real, Integer). This is only enabled if the
Verification Method is High-High-High/Low-Low-Low or High-High/Low-Low.
HHH The High-High-High limit for the parameter (Real, Integer). This is only enabled if
the Verification Method is High-High-High/Low-Low-Low.
EU The engineering units associated with the parameter, such as Degrees F or
Kilograms. (view only)
Tip: If the step is a phase with configured control strategies, the first item in the Formula
Value Entry/Report Expression dialog box is named CONTROL_STRATEGY, and the Value
column for this item defaults to the control strategy assigned as the area model default.
3. If the step is a phase for which control strategies are defined, select the
appropriate control strategy from the Value list in the row named
CONTROL_STRATEGY. Only parameters and reports associated with
the selected control strategy display.
4. For each formula parameter, select the appropriate origin from the
Origin list. (If the step is a phase or operation sequence, the list
includes Operator.)
5. In the Value box, type a value for each parameter.
6. If the data Type is Enumeration, select an enumeration from the
Value list based on the selected origin.
Tip: The list of enumerations displays in alphabetical order and configure in the area model.
7. Select Display to see the step formula value for this parameter in the
SFC view step (step formula values always display in the Table view).
8. To change the default parameter deviation limit values defined for the
phase in the area model, edit the limit values for this recipe in the LLL,
The terms of the expression may reference several different sources of data.
Recipe and report parameters behave differently because their expected roles
are different. A recipe parameter supplies data to the process. A report
parameter reports a result of the process. The two kinds of parameters
evaluate and the result is stored as the value of the parameter at different
times.
Validate parameter When a parameter expression evaluates, the result compares to the
verification policy (Hi/Low, Hi-Hi/Low-Low, or Hi-Hi-Hi/Low-Low-Low). If
expressions the value falls outside the expected range, the appropriate verification policy
action triggers. A value of BAD VALUE does not trigger a verification policy.
Tip: Parameter validation limits, which can result in the invocation of an electronic signature, only
support phases.
Parameter expression The value of a parameter having an expression cannot change unlike
parameters having an origin of VALUE. FactoryTalk Batch View and
override FactoryTalk Batch View HMI Controls provide the ability to override the
expression and assign a value when responding to extraordinary
circumstances. The new displayed value is marked as using the Override
function.
Report parameter At runtime, report parameter expressions differ from recipe parameter
expressions when evaluated. Recipe parameter expressions update
expressions continuously. Report parameter expressions are configured to update on
triggers. The report values are uploaded to the FactoryTalk Batch Server based
on the configured report parameter to upload on terminal state, or if an
upload is requested by the phase logic.
• One, the phase step transitions to a terminal state and the values
automatically upload.
Override a report The operator under any circumstances may not change calculated report
parameters. This corrupts the record of the execution of a procedure. There
expression are two exceptions where the value of a report expression may be changed:
Parameter expression Parameter expressions support these operators. The precedence of the
execution depicts from highest to lowest. An operator with a higher
operators precedence executes before an operator of lower precedence.
Operator Description
() Expressions within parentheses are evaluated before expressions
outside of parentheses
*, / Multiplication, division
+, - Addition, subtraction
Parameter expression Functions determine how the expression parser handles Real and Integer
functions data types used in a parameter expression. This table lists available functions
and their behavior on positive and negative values:
Function Description Behavior: Behavior:
Value Result
RND( ) Round – Numeric values round to the 6.7 7
nearest integer. 6.5 7
6.3 6
-6.7 -7
-6.5 -6
-6.3 -6
RDUP( ) Round up – Numeric values round to the 6.7 7
next larger integer. 6.5 7
6.3 7
-6.7 -6
-6.5 -6
-6.3 -6
TRNC( ) Truncate – Retains only the integer portion 6.7 6
of the numeric value. 6.5 6
6.3 6
-6.7 -6
-6.5 -6
-6.3 -6
ABS( ) Absolute – Numeric values are positive 6
values. 6.7 6.7
For example, if the Real or Integer is 6.7, -6 6
there is no effect. If the Real or Integer -6.7 6.7
is -6.7, it multiplied by -1 and is 6.7.
MOD( ) Modulo – Returns the modulo, or remainder, 7 MOD 6 1
of a division. (Integers only)
Phase link groups identify phases that may communicate and work together
for these reasons:
A phase link group must contain the same number of phases as there are
message partners plus one (the phase itself), configured in the area model for
each of the phases that are included in the group. For example, if each phase
in a phase link group is configured with three message partners, then there
must be a total of four phases in the phase link group (each phase has three
message partners plus itself). Message partners are configured in the
FactoryTalk Batch Equipment Editor.
Message partner phases When a recipe containing message partner phases is on the Batch List, the
link group definition informs the FactoryTalk Batch Server which phases
need to communicate with each other.
A phase link group must contain the same number of phases as there are
message partners plus one (the phase itself), configured in the area model for
each of the phases that are included in the group. For example, if each phase
in a phase link group is configured with three message partners, then there
must be a total of four phases in the phase link group (each phase has three
message partners plus itself). Configure message partners in the FactoryTalk
Batch Equipment Editor.
Message partner A common message partner application is with a Transfer-Out phase on one
unit and a Transfer-In phase on another unit running in parallel within a
application Procedure-level recipe.
When the Transfer-Out phase on a unit is ready to send its material to the
next unit, the Transfer-Out phase’s running logic sets its _RQ value equal to
5501 (where 01 is the message number). The Transfer-Out phase’s running
logic, if coded to do so, halts and waits for the Transfer-In phase to set its _RQ
value. When the Transfer-In phase is ready to receive the material from the
previous unit, the Transfer-In phase’s running logic sets its _RQ value equal to
5201 (where 01 is the message number) and, if coded to do so, halts and waits.
The FactoryTalk Batch Server then coordinates the messaging when it sees
that both message partners have either a 55xx or a 52xx value in their
respective _RQ memory registers and their xx value (the message number) is
the same. The FactoryTalk Batch Server then commands the PLI to reset both
message partners’ _RQ values to 0. Once both message partners see their _RQ
registers reset to 0, their running logic (which had halted while they were
waiting for their respective message partner) then continues to execute.
• T1: Transfer-Out phase is ready; sets _RQ = 5501 and halts its running
logic.
• T2: Transfer-In phase is ready; sets _RQ = 5201 and halts its running
logic.
• T3: FactoryTalk Batch Server commands the PLI to reset both _RQ
registers to 0.
• T4: PLI resets both _RQ registers to 0.
• T5: All running logic resumes execution.
Link group rules
118 Rockwell Automation Publication BATCH-UM006C-EN-D - November 2023
Chapter 10 Phase link groups
The rules involving link groups are as follows:
Phase communication The actual communication between the phases is programmed in the phase
logic using the _RQ = 5Xxx request category. Commonly implemented
between two individual phases using 55xx and 52xx where:
Create a phase link group Use these instructions to create a phase link group.
Tip: A phase may only be contained in one phase link group.
Delete a phase link group Follow these instructions to remove a phase link group.
All of these recipe elements can contain phase link groups. To edit the phase
link group contained in Operation A, open Operation A by itself.
Use the recipe approval process to validate the development and maintenance
of batch recipes. Signature certification allows the recipe approval process to
safeguard the design workflow in a formalized manner. This ensures
validation of each recipe by authorized personnel before released to
production, or released as a component within a larger recipe.
Use the Expedited Approval process instead of the Primary Approval process,
for example in the early stages of recipe design. A recipe can go through initial
review using the expedited approval process. After the recipe is deemed ready,
the Expedited approval process can be reverted to its starting point, and then
the Primary approval process can be used to validate it for release as a step
(procedure or operation) used in a larger recipe, or to release it to production.
Revert option
Both primary and expedited processes provide a Revert option to allow
forward and reverse progress through the recipe approval process.
• Revert into the initial Not Started state. The Not Started state allows
restart of the recipe approval process, obtain area model recipe
approval process changes, or switch between the primary and
expedited approval processes.
• Revert returns to the beginning of any incomplete approval step
and/or to any previous approval step without restarting the entire
approval process.
• The revert process operates the same for both the primary approval
process and the expedited approval process.
When Recipe Approval changes from disabled to enabled in the area model, a
recipe property set to true becomes an approved step, with Recipe Editor
using the System approver.
Configure recipe approval This chart shows the sequence of tasks in the setup, configuration, and
execution of recipe approval.
To approve a recipe:
1. Open the FactoryTalk Batch Recipe Editor. If prompted to translate the
recipes, select Yes.
a. (optional) Select Verify All Recipes.
b. Select Accept when the verification has finished.
When a signature requires multiple signoffs, each signoff must be made using
a unique UserID and password. Reuse of the same UserID and password
results in this warning:
Be sure to provide a unique UserID and password (different from the UserID
quoted in the warning message) and continue with the signoff.
Tips:
• With the completion of the first signoff on an approval step, the recipe becomes read-only. To
make the recipe editable, revert all approvals back to the not started state.
• Any time a recipe is copied using Save As, the Release Recipe as Step and Release Recipe to
Production states are cleared in the copy.
• Approval steps and their status are included when a recipe is exported, and retained during import.
•
Revert a recipe approval Any completed approval step can be reverted. When a step is reverted, all
completed approval steps that follow it in the approval process are also
reverted to their Not Started state. Reverting the first formal step has the
effect of reverting an entire recipe approval back to its Not Started state. To
revert an approved step:
5. Enter the signoff credentials to revert that step in the bottom area of
the dialog box and select Revert. If a FactoryTalk Security Permission
is invalid, it is indicated by a warning icon preceding it in the
Security Permission(s) column. Hover over an invalid permission to
show any valid permissions for that signoff.
6. If the signoff fails, select Clear to empty all values in this area, re-enter
the credentials, and retry the operation.
7. (optional) Select the Summary tab. The Summary shows the selected
approval step marked as Not Started (when a single signature is
required) or Reverting (if more than one signature is required).
8. If more than one signature is required, the other signers must also
sign off in the Revert tab. The Revert tab displays the next required
signature with that line highlighted. The final required signature is
marked with a checkered flag icon.
When all signatures are entered and the approval process step is reverted,
make and save the necessary edits to the recipe. Navigate to the Approval tab
When Recipe Approval is disabled in the area model, and recipes in the
current working set have existing signoffs, the Inconsistency between Area
Model and Recipes dialog box opens.
• Remove opens the recipe set with all approval step signoffs removed.
• Exit closes the FactoryTalk Batch Recipe Editor and retains existing
signoffs. Return to the FactoryTalk Batch Equipment Editor, re-enable
recipe approvals, and continue with the recipe approval process in the
FactoryTalk Batch Recipe Editor.
Automatic system signoff If Recipe Approvals are enabled, FactoryTalk Batch Recipe Editor
automatically creates two Expedited Approvals process steps after
FactoryTalk Batch is upgraded: Release Recipe to Production and Release
Recipe as Step.
The FactoryTalk Batch Recipe Editor creates the Release Recipe to Production
step when:
Recipe versioning starts with a new or existing recipe before it has had a
version of it created. When the recipe has reached a development state the
recipe author wants to protect, the Check In command creates the first
instance of a versioned recipe. At that point, the recipe version is saved, set to
read-only, and can no longer be edited.
Recipe versioning Below the Store Recipes Using area is the Enable Recipe Versioning check
box. Check this box to enable Recipe Versioning, a system-enforced naming
convention that stores and protects recipe revisions. By default the box is
unchecked and recipe versioning is disabled.
IMPORTANT FactoryTalk Full Edit access to FactoryTalk Batch Equipment Editor is required to
enable and disable recipe versioning.
How recipe versions are Recipe versions are maintained through a naming convention enforced by the
FactoryTalk Batch Recipe Editor.
named
Recipe version naming has three components
• Basename is the unique name of a recipe. The recipe author gives the
recipe this name. The basename is identifies all related versions and
work-in-progress (WIP) copies.
• Version name is the name assigned by the FactoryTalk Batch Recipe
Editor to a versioned recipe created from a new, existing, or WIP
Restrictions for recipe When using recipe versioning, observe these restrictions:
versions • A versioned recipe can only reference other versioned recipes or steps.
• Once a recipe version, or work-in-progress recipe (WIP), is created, its
basename cannot be changed afterwards, even if recipe version control
is disabled.
• A new recipe’s basename must be unique; it cannot be the same as an
existing recipe basename or existing recipe name (in the current
working set).
• A recipe's basename cannot contain any of the naming conventions
used by the system, namely ~V or _WIP. These strings are reserved for
use by the FactoryTalk Batch Recipe Editor.
• Prior to creating a versioned recipe, the recipe is automatically verified
by the FactoryTalk Batch Recipe Editor; it must pass this verification
without any errors.
• If a recipe makes reference to missing or obsoleted recipes, it will not
pass verification, and is marked by the system as obsoleted.
• Import of versioned recipes can result in conflicts, both with version
numbering and version naming.
• A recipe formulation is versioned when the master recipe is versioned,
and follows the same versioning behavior as the master recipe:
• The formulation cannot be created, modified, or deleted from a
versioned recipe. Modifications include changing the formulation
name, formulation description, or formulation parameter values.
• The formulation can be created, modified, or deleted from a
checked out WIP recipe.
• If the formulation in a WIP recipe is invalid, the formulation cannot
be checked in until the issue is resolved. However, the WIP can be
saved.
Tip: Recipe versioning and the recipe approval process are independent of each other.
Recipe steps can be approved or reverted without being considered as edits to a
versioned recipe.
Recipe version control works with all recipe storage formats (BINARY, XML, and RDB).
Enable recipe versioning Configure Recipe Versioning within the FactoryTalk Batch Equipment Editor.
Area Model authors must have FactoryTalk Full Edit access to FactoryTalk
option Batch Equipment Editor to enable and disable versioning.
Disable recipe versioning When recipe versioning is disabled, previously versioned recipes remain
read-only and have all header boxes disabled. It is still prohibited to name a
option new recipe in conflict with any existing basename, in order to avoid name
collisions if recipe versioning is re-enabled.
Create a recipe version Prior to starting this procedure, ensure that recipe versioning is enabled in
the Server Options dialog box in the FactoryTalk Batch Equipment Editor.
Recipe version control With recipe version control enabled, these menu items (and their
corresponding toolbar icons) are available:
Save Saves changes in the open file to the Saves the changes in the WIP file to the • Versioned recipes cannot be
working set. working set. edited--they cannot be saved.
• If Recipe Approvals are enabled, the
recipe with its approval state is saved
automatically with every approval or
revert signoff.
Export • Save an exact copy of a specified recipe to the specified working set of recipes.
• User is prompted before overwriting an existing versioned file.
• Existing recipe approval steps are maintained.
Import • Import an exact copy of a recipe from • If a version conflict exists, choose • Confirm to overwrite an existing
another working set of recipes into the which version to import. versioned file.
current working set of recipes. • If a recipe basename conflict exists • If no name conflict exists, this imports
• Existing recipe approval steps are with one or more recipes in the an exact copy of a recipe from another
maintained. working directory, import the recipe working set of recipes into the current
that causes the conflict. working set of recipes.
• Existing recipe approval steps are • If a version conflict exists, prompts to
maintained. resolve the conflict.
• If a recipe basename conflict exists
with one or more recipes in the
working directory, the recipe that
causes the conflict cannot be
imported.
• Existing recipe approval steps are
maintained.
Remove Recipe • Deletes the recipe from the working set (any referencing recipe will then have a missing element).
Rebuild Recipe • If a recipe is added or deleted from • If a recipe basename or version numbering conflict exists with two recipes in the
Directory the recipe directory without using the recipe directory, choose which recipe to retain in the directory.
FactoryTalk Batch Recipe Editor, this
command rebuilds the recipe directory
and provides an option to verify all
recipes within it.
Rename (Change • Changes the name of the file and Not allowed.
Header data & automatically propagates to all
Save) referencing files.
• Updates all the transition expressions
and parameters with the new name.
• Name cannot change if an approval
process is active.
• The recipe remains a New Recipe.
Check Out Not Applicable. • Creates the next WIP recipe for the
current recipe (basename~Vn_WIP).
• Existing recipe approval steps are
removed.
Recipe version history Select Version History to view recipe version information.
The version history consists of:
• Recipe name
• Version description
• Version creation date
• Version verification date
• Area model date (when last saved)
• Area model name against which the version was verified
All boxes are read-only with the exception of the Version Description box
under Current Recipe. This box can be edited if:
• The recipe itself is editable (editable recipes are both unversioned and
work-in-progress (WIP) recipes that have not started a recipe approval
process).
• The FactoryTalk user has full access rights.
Obsoleted recipe versions During verification, the area model configuration stored in the recipe is
compared against the current area model. If the recipe configuration and
area model do not match, the recipe fails verification and is subsequently
marked by FactoryTalk Batch as Obsoleted.
Obsoleted recipes:
• Use the Save As command to create a new recipe. The new recipe is not
marked as obsoleted.
• Use the Check Out command to create a new, editable,
work-in-progress (WIP) recipe. The FactoryTalk Batch Recipe Editor
will make all required area model configuration changes to the WIP as
it is created, indicating the modifications in the verification progress
dialog box. The original obsoleted recipe remains unchanged.
Once the WIP recipe is checked back in:
• It is given the latest version number.
• The original obsoleted recipe remains in the working directory.
Alternatively, to reinstate an obsoleted recipe (clear its obsoleted status),
modify the area model in the FactoryTalk Batch Equipment Editor to match
the recipe configuration. When the recipe next undergoes verification by the
FactoryTalk Batch Recipe Editor, it is reinstated as a current versioned recipe.
Tip: If a Recipe Approval Process is associated with a recipe when it is marked as obsoleted, its
approval properties remain in effect and can be approved or reverted as needed.
Enable recipe versioning or Use these examples to determine whether to enable recipe versioning or
recipe approvals:
approval
Recipe versioning can be used in conjunction with the Recipe Approval
Process--playing a complementary role in recipe development.
Tip: When using recipe versioning and approvals together, consider applying expedited approvals to a
checked-out (WIP) recipe, and the formal approval process to a checked-in (Versioned) recipe.
This section details the four scenarios when enabling or disabling Recipe
Version Control and the Recipe Approvals Process:
Recipe Versioning Recipe Versioning
Disabled Enabled
Recipe Approvals Scenario 1 Scenario 2
Process Disabled
Recipe Approvals Scenario 3 Scenario 4
Process Enabled
Security authority This flow chart shows the sequence of tasks in the configuration and use of
security authority.
configuration
Area models are secured within FactoryTalk Batch Equipment Editor using
the Security Authority command. The FactoryTalk Network Directory
Security Authority Identifier (SAI) is written into the area model schema. To
subsequently open and edit the area model, the SAI in the area model must
match that of the current FactoryTalk Network Directory. No match prevents
the opening and editing of an area model and its associated recipes in
FactoryTalk Batch Recipe Editor.
Recipes are secured within FactoryTalk Batch Recipe Editor using the
Security Authority command. The FactoryTalk Network Directory SAI is
written into the recipe header data. To subsequently open and edit the recipe
in FactoryTalk Batch Recipe Editor, the SAI in the recipe must match the one
in the current FactoryTalk Network Directory.
See also
Import and export restrictions for secured recipes on page 167
Security authority overview on page 141
Secure recipe Recipes are secured using the Security Authority command. Use these
instructions to secure the recipe.
4. Select Save.
Once the recipe is saved, verify the recipe and release to production for batch
operator access.
See also
Verify recipe on page 145
Verify recipe Verify recipe is the process that checks the recipe for completion and
accuracy. A recipe must be verified to ensure that all connections and
references are properly made. The verification process examines the selected
recipe and all lower-level recipes. If there are errors in the recipes being
verified, messages explaining the nature of the error are displayed.
Tip: To verify all recipes, from the File menu select Verify All Recipes or Verify All Recipes and Validate
All SFCs.
1. Open the recipe to verify.
2. Select Verify or select Verify Recipes from the Recipe menu. The
FactoryTalk Batch Recipe Editor reads the current recipe and displays
a list of the recipe’s outstanding problems, if any, and saves the recipe
in the process.
IMPORTANT FactoryTalk users with ViewOnly permissions to the FactoryTalk Batch Recipe
Editor cannot open the FactoryTalk Batch Recipe Editor to verify recipes. The
FactoryTalk Batch Recipe Editor will close.
What gets verified? When a recipe is opened in FactoryTalk Batch Recipe Editor, FactoryTalk
Batch Recipe Editor checks that all the phases, operation sequences,
parameters, and reports in the recipe also exist in the area model. If any
parameters or reports have changed in the area model since the recipe was
originally built, FactoryTalk Batch Recipe Editor automatically adds or
removes parameters or reports from the recipe accordingly. Material
references are also checked when the recipe is opened. If the material is not
present in the material database, the material parameter is reset to
NULL_MATERIAL.
When a recipe is verified, these items are also checked:
SFC validation The verification feature ensures that basic SFC legality rules, such as
step-transition-step sequencing, are enforced, but the recipe verification
check does not detect logic errors within the SFC structure. Beginning with
FactoryTalk Batch v. 10, the FactoryTalk Batch Recipe Editor provides SFC
While the above SFC structure would pass the current verification checks
done by the FactoryTalk Batch Recipe Editor, this structure would never run
to completion for this reason: The final transition condition following the
AND Convergence cannot execute unless all prior steps above it are
concurrently active. The OR Divergence ensures that only one of the steps
prior to the AND Convergence can be active at one time. While the error in the
SFC shown above is relatively easy to identify, this type of SFC flaw and others
can be much more difficult to identify in more complex recipe structures.
The SFC Validation tool can detect a variety of programming errors that result
in invalid or illegal SFC programs. SFC structures identified as invalid by the
tool results in recipe verification warnings. Note that the Release Recipe to
Production approval or check box is not cleared by the verification checks.
Run SFC validation While SFC validation is optional, it is good practice to get in the habit of
validating the SFC structures.
Tip: To validate all recipes, from the File menu, select Verify all Recipes and Validate all SFCs.
Set allowable SFC The SFC Validation tool deals with OR Divergences by examining each
possible leg of the divergence as if it were a separate SFC. This leads to a
permutations combinatorial number of possible SFCs when encountering multiple
divergences within an SFC. For example, if an SFC contained three OR
Divergences, one with three legs, one with two legs, and the third with four
legs, the number of SFC permutations that would need to be examined would
be 24 (3x2x4 = 24).
If configured a recipe with an extremely large number of OR Divergences,
validation may take several minutes to complete. For this reason, define how
many OR divergences the validation checks.
Tip: If therecipe contains more OR divergences than the upper limit allows, the recipe is considered
too complex and validation stops. Configure the upper limit in the FactoryTalk Batch Recipe Editor
Options dialog.
1. To set the maximum number of SFC permutations, select Options
from the Recipe menu.
2. Change the value in the SFC Validation: Max Number of OR
Permutations box to the desired number.
The default setting is 65535. The allowable range for the configuration
parameter is from 1024 to 2,097,152, inclusive.
Select OK to save the changes.
SFC validation error types Five basic errors can occur within an SFC structure. These examples show
how to create and detect these errors.
The SFC Validation function identifies the linear segment of an error. Note
that this may not be the location of the actual structural issue. The error
message generated by SFC Validation when it detects an SFC structure error
may include a linear segment specifier that provides the name of the first step
in the linear segment of the error. If the first step in the linear segment is an
Initial Step or Terminal Step of the SFC, then the step name, as currently used
by the FactoryTalk Batch Server, is INITIALSTEP:1 or TERMINALSTEP:1.
Example:
WARNING: INITIALSTEP:1 >> Parallel Activation of Linear Segment
If there are no steps present in the linear segment, the string STEP NOT
PRESENT IN LINEAR SEGMENT is used.
Parallel activation of The loopback from the right leg of the OR Divergence back into the Linear
Segment prior to the AND Convergence is the source of the error. Two
segment execution tokens exists in the same linear segment, which is the segment
containing the step marked with an X:
The actual error message text is similar to: WARNING: SFC Validation Tool
detects dual activation of Linear Segment beginning with step:%1 (where %1
is the actual segment identifier). The reported error location may not be close
to the SFC structural issue. Refer to the product documentation for examples
of SFC structures that can report this error. Other errors may or may not be
present.
Unreachable terminal step SFC Validation can detect when an SFC structure makes it impossible for a
recipe execution to reach the SFC terminal step.
In this SFC, the OR Divergence activates only one of the two steps below it.
This means that the transition below the AND Convergence never activates,
since it is not permitted to fire unless all prior steps are active. This error
makes it impossible for an execution token to reach the terminal step of the
SFC.
The actual error message text is similar to: WARNING: SFC Validation Tool
detects unreachable Terminal Step. Refer to the product documentation for
examples of SFC structures that report this error. Other errors may or may not
be present.
Parallelism with terminal SFC Validation can detect when an SFC structure makes it possible to reach
the terminal step of the SFC while other linear segments within the structure
step still have active execution tokens.
The error message text is similar to: WARNING: SFC Validation Tool detects
parallelism with Terminal Step of Linear Segment beginning with step:%1
(where %1 is the segment identifier). The reported error location may not be
close to the SFC structural issue. Refer to the product documentation for
examples of SFC structures that can report this error. Other errors may or
may not be present.
In this SFC example, the linear segment reported by the Validation Tool as the
source of the error actually contains no steps.
The actual error message is similar to: WARNING: SFC Validation Tool
detects Linear Segment beginning with step:%1 (where %1 is the segment
identifier) has no path to Terminal Step. Refer to the product documentation
for examples of SFC structures that can report this error. Other errors may or
may not be present.
The error message is similar to: WARNING: SFC Validation Tool detects
unreachable Linear Segment beginning with step:%1 (where %1 is the
segment identifier). Refer to the product documentation for examples of SFC
structures that report this error. Other errors may or may not be present.
Release Recipe as Step To use a recipe within another recipe, set the Release Recipe as Step property
to true. When no Recipe Approval process is in use, select the Release Recipe
option as Step check box in the Recipe Header dialog box. When enabled Recipe
Approval process, set this property by completing the signoff for Release
Recipe as Step during the recipe approval process.
Tip: A recipe is valid for release to production only when all steps and procedures within it are
approved as Release Recipe as Step.
Release recipe to Only recipes created in FactoryTalk Batch Recipe Editor have access to
FactoryTalk Batch View, FactoryTalk Batch HMI Controls, or other client
production applications. If a recipe is to appear as a choice in a client application Recipe
List, release the recipe to production. When no Recipe Approval process is in
use, a recipe is released to production by checking the Release Recipe to
Production checkbox in the Recipe Header dialog box. When a Recipe
Approval process is enabled, the release to production property is set by
completing all signoffs in the recipe approval process.
A recipe is valid for release to production only when all procedures within it
are respectively approved as Release Recipe as Step.
Rebuild the recipe directory The working set of recipes is stored in the location specified on the Project
Settings tab of the FactoryTalk Batch Equipment Editor Server Options
dialog box. If a recipe has been added to or deleted from this recipe storage
location without using the FactoryTalk Batch Recipe Editor, rebuild the recipe
directory.
Recipe maintenance Recipe maintenance includes find recipe references, page setup, generating
reports, remove recipe, and translate recipes.
See also
Find Recipe References overview on page 156
Find Recipe References Use Find Recipe References to locate recipes that contain a specified
operation or unit procedure. The reference recipe is the operation or unit
overview procedure referenced in container recipes searched. A container recipe
contains one or more steps assigned to a specified operation-level recipe or
unit procedure-level recipe retrieved. A step reference is a step within a
container recipe configured to reference an operation or unit procedure.
The reference list of recipes that contain steps configured with the specified
operation or unit procedure displays in a table. Every entry in the resulting list
is the full recipe path and corresponding recipe levels to that step. When a
container recipe opens, the highest level recipe opens. In this example,
CLS_SWEETMILK_UP / CLS_SWEETMILK_OP:1 is selected. The recipe that
opens is CLS_SWEETMILK_UP. For an explanation of recipe levels, see the
FactoryTalk Batch Recipe Editor introduction.
Find recipe references Search recipes for a reference to an operation or unit procedure. Recipes can
be stored as a binary file, XML file, or SQL Server database.
Prerequisites
• Obtain at least view-only security privileges to view the results.
• Close all recipes.
• Verify all recipes (full edit privileges required).
Page setup Page Setup is accessed through the File menu or Ctrl+P, and allows
adjustment of:
• Margins (must be greater than 0.25 inches)
• Orientation
• Paper size and source
• Preview (view only)
• Printer and associated properties
Tip: The print area cannot be smaller than 4 inches (10 cm) wide or high.
Generate reports option Filter and print a complete working set of recipes, or if desired, a single recipe
using the Generate Reports option in the FactoryTalk Batch Recipe Editor.
The report format consists of these sections: the Overview Page, the SFC,
Recipe Descriptive Information, and Recipe Formulations.
When generating reports, the entire recipe procedure appears in the SFC
rectangle grid. An SFC rectangle represents a portion of the SFC that prints on
SFC Rectangle
Print a working set of Use the Generate Reports option to select a set of recipes to print.
recipes The Print function in the FactoryTalk Batch Recipe Editor uses the configured
default printer. If there is no default printer specified, a prompt to establish
one opens. Set or change the default printer without having to close the
FactoryTalk Batch Recipe Editor application.
Print a single recipe Open a recipe and use Generate Reports to print a single recipe instead of a
set of recipes.
The Print function in the FactoryTalk Batch Recipe Editor uses the configured
default printer. If there is no default printer specified, a prompt to establish
one opens. Set or change the default printer without having to close the
FactoryTalk Batch Recipe Editor application.
Remove a recipe When a recipe file is no longer needed, remove it from the current working
set of recipes.
1. Select File > Remove Recipe. The Remove Recipe dialog box opens.
2. (optional) Set filters with the Recipe filter to narrow the number of
recipe names displayed.
Tip: The filter options are the same options as the Open Recipe dialog box.
3. From the Recipe Name list, select the recipe or recipes to remove, and
then select Remove.
The recipe Import and Export commands move exact copies of recipes in and
out of the current working set. Recipes can be imported and exported in
binary, XML, or RDB format.
When Recipe Version Control is enabled, the FactoryTalk Batch Recipe Editor
prompts if version conflicts are encountered during import and export.
• Recipe Approval states are exported as part of a recipe, and are brought
in unchanged when a recipe is imported.
• Security Authority supports only the binary file format.
Import recipes Import recipes from any format into the current working set of recipes
(binary only for secured recipes).
IMPORTANT Importing or exporting FactoryTalk Batch recipes to or from a computer containing
more than one instance of Microsoft SQL Server is not supported. The SQL Server
instance name cannot be defined in the Import/Export Recipe dialog box.
Prerequisites
• Make sure the recipe file format (binary, RDB, or XML) for the working
set of recipes is set to the correct format.
• Create the recipe database on the computer running SQL Server.
FactoryTalk Batch uses a database called MasterRecipes.
Tip: If the recipe file format in the FactoryTalk Batch Equipment Editor was changed, restart
the FactoryTalk Batch Server if it is running, and re-open the FactoryTalk Batch Recipe Editor
for the change to take effect.
To import recipe
1. Select File > Import Recipe Into Working Set option. The Import
Recipe dialog box opens. The title bar of the dialog box indicates the
file storage type selected for the current working recipe set in the
FactoryTalk Batch Equipment Editor. Imported recipes convert to this
format.
2. (optional) In the Recipe directory from which recipes will be imported
area, change the storage format for importing recipes.
3. Select the recipe directory or database that contains the files to import.
• Binary Files or XML Files
Select a directory If Binary Files or XML Files are imported, select the directory that contains
the binary or XML files to import.
To select a directory:
1. Select browse next to the Recipe Directory box of the selected
storage format. The Select Directory dialog box opens. The default
directory, BATCHCTL, displays unless another directory was
previously selected.
Tip: If selected the same directory used by the working set of recipes, an error message
displays. Choose another directory."
2. Select the directory, and then select Open. The Recipe Name list in the
Import Recipe dialog box updates with the recipe list from the
specified directory.
Select a SQL Server If RDB files or export files to RDB format are imported, select the Microsoft
SQL Server database that contains the files to import or the database to
database export recipes.
Export recipes Export recipes from the current working set of recipes into any supported
storage format, including RDB, XML, or binary (secured recipes only
maintain security when exported to binary).
To export recipes:
1. Open the FactoryTalk Batch Recipe Editor.
2. From the File menu, select Export Recipe from Working Set. The
Export Recipe dialog box opens. The title bar of the dialog box
indicates the file storage type selected for the current working set of
recipes (set in the FactoryTalk Batch Equipment Editor). The recipes
export from this format.
Import conflicts Recipe imports can create naming and versioning conflict. This can take
several forms:
Resolve recipe basename If a versioned recipe with the same basename as one or more versioned
recipes is imported a warning message opens.
conflict
Import and export recipe When recipes are secured with a security authority identifier (SAI), secure
import and export can only occur when:
restrictions
• The recipe to import or export is BINARY.
• The SAI in the recipe matches the SAI in the current FactoryTalk
Network Directory.
Recipe formats
RDB format The RDB recipe format gives greater flexibility when generating reports. A
default Microsoft SQL Server database, MasterRecipes, is created during
FactoryTalk Batch installation and selected Yes, I want to store recipes in SQL
Server.
Tip: The MS SQL Server must be installed before installing FactoryTalk Batch. Check software
compatibility in the FactoryTalk Batch Components Upgrade and Installation Guide.
ODBC
Recipes
Equipment
ODBC Database
Protocol Recipes
Recipe Editor
Equipment Equipment Editor
1. Create/Edit Recipes
Database 1. Create/Edit Equipment
2. Verify Recipes against
Database
Equipment Database
Add a Windows user to the Add a Windows user to the MasterRecipeAuthor and MasterRecipeViewer
according to the function needed. Add recipe authors to the
MasterRecipeAuthor and MasterRecipeAuthor local group and recipe viewers to the
MasterRecipeViewer local MasterRecipeViewer local group. The MasterRecipeAuthor user is allowed to
groups edit recipes, and the MasterRecipeViewer user is only allowed to view recipes.
FactoryTalk Batch uses a database called MasterRecipes.
1. Add the FactoryTalk Batch Server user account, or the domain account
used by the FactoryTalk Batch Server, to the MasterRecipeViewer
user group. This allows the FactoryTalk Batch Server to read the
MasterRecipes database.
2. Add the Windows user to the MasterRecipeAuthor or
MasterRecipeViewer local group.
Create the MasterRecipes Before importing recipes into the RDB format, first create the recipe database
database on the computer running SQL Server. FactoryTalk Batch uses a database
called MasterRecipes.
Tip: Follow these instructions if the Yes, I want to store recipes in SQL Server option was not
selected during FactoryTalk Batch installation, and MS SQL Server is installed.
Prerequisite
• Install and run SQL Server.
XML format XML schemas have become an industry standard for providing
implementation-neutral information. An XML schema defines what a textual
file should look like to represent structured data, for instance a master recipe.
Recipes are an instance document of an XML schema and can easily exchange
between different companies.
The XML recipe format gives greater flexibility when generating recipes that
must be usable across multiple operating systems and platforms. The
FactoryTalk Batch Recipe Editor is capable of editing and creating XML
recipes, and the FactoryTalk Batch Server can execute these recipes.
XML recipe schema The FactoryTalk Batch Server and FactoryTalk Batch Recipe Editor can only
read a valid XML recipe. An invalid recipe, one that does not conform to the
MasterRecipe schema (MasterRecipe.xsd), is rejected, thus protecting the
FactoryTalk Batch Recipe Editor and Server from faulty input. A valid recipe
does not imply that the recipe has been verified by the FactoryTalk Batch
Recipe Editor.
Errors may occur during recipe import or export due to security issues or
verification issues.
See also
Improperly secured recipe ineligible for selection on page 173
Improperly secured recipes Improperly secured recipes in the current working set cannot be selected
when using the Import, Export, or Generate Reports command in the
FactoryTalk Batch Recipe Editor. An improperly secured recipe is one in which
the security authority identifier (SAI) in the recipe does not match that in the
current FactoryTalk Network Directory.
This notification window opens to list any improperly secured recipes.
The recipe name listed in the notification window can be selected and copied
to the clipboard for reference.
Verification results When checking in a recipe or procedure as part of the versioning process, the
recipe or procedure must pass verification. During the verification process,
the FactoryTalk Batch Recipe Editor opens the Verification Results dialog
box, listing any warnings or errors found. Warnings allow creation of a
versioned recipe. Errors prevent successful verification and the creation of a
versioned recipe
Remove area model conflict A unit procedure, CLS_FRENCHVANILLA_UP, is verified when opened in the
FactoryTalk Batch Recipe Editor. An operation within the unit procedure,
CLS_FRENCHVANILLA_OP~V1, is marked as Obsoleted during the
verification, because of a conflict detected with the area model. The conflict is
because parameter INGREDIENT_A was added to a phase after the recipe
CLS_FRENCHVANILLA_OP~V1 was versioned.
A lower-level operation or unit procedure does not have its Release In the Verification Results dialog box, select Recipe > Header Data command to check
Recipe as Step property enabled. each operation or procedure identified with this warning, and enable its Release Recipe as
Step property. If enabled Primary or Expedited Approvals, sign off on its Release Recipe as
Step approval step.
All lower-level operations or unit procedures must be versioned before In the Verification Results dialog box, use the Check in command to apply versioning to
the parent can be versioned. each operation or procedure identified with this error.
A lower-level operation or unit procedure has been marked as obsolete, As a best practice, apply either of these methods starting with the lowest level of the
because of conflicts with the area model. procedure's hierarchy and work up to the top level.
• Method 1: Modify the area model to reinstate an obsolete procedure
• Method 2: Use Check Out and Redefine Step to remove an area model conflict
•
Invalid recipe folder or path Invalid recipe folder or directory path warning may occur when performing
recipe file operations such as Export in the FactoryTalk Batch Recipe Editor:
This error can result if:
Index configuring 62
printing 158, 159
binding requirements
configuring 60
printing 158, 159
branch structures
. adding to an SFC 77
.bpc files 67 building a recipe 20
.oxml files 67
.pxml files 67 C
.uop files 67
changing
.upc files 67
recipe storage format 172
.uxml files 67
unit requirements 55, 59
A command buttons 19
comments
adding associating 83
branch structures to an SFC 77 disassociating 83
operations to a recipe 52 editing 82
parallel steps to a table 91 configuring
parallel steps to an SFC 85 binding preferences 62
phase link groups 119 binding requirements 60
procedure 55 Recipe Editor options 15
recipe header data 64 container binding 105
steps before parallel steps 92 Container parameter 104
steps to an SFC 88 control strategies
transitions to an SFC 78 formula values 103, 108
unit procedures 52 phase link groups 117
Amount parameter 104 copying a recipe 67
AND convergence 33, 86 creating
AND divergence 33, 86 operations 52
AND path, example 27 phase link groups 119
AND structure 23 procedure 55
arbitration unit procedures 52
null phase 31
assigning D
recipe formula parameters 99, 100
report limits 108 data types 25
step formula values 108 binding expressions 96
Timer step formula values 109 enumeration 96
transition expressions 80 examples 96
associating comments 83 integer 96
associating recipe comments 83 real 96
associating text boxes 83 string 96
decimal places
B setting 15
decision logic 27
begin parallel step 40 default printer 158
binary format defer
exporting recipes to 165 parameters 105
binary recipe format 169 defining
binding expressions
steps 78
data types 96
deleting
operators 114
equipment requirements 59
Literature Library Find installation instructions, manuals, brochures, and technical data publications. rok.auto/literature
Product Compatibility and Download Center Get help determining how products interact, check features and capabilities, and rok.auto/pcdc
(PCDC) find associated firmware.
Documentation feedback
Your comments help us serve your documentation needs better. If you have any suggestions on how to improve our content, complete the form at
rok.auto/docfeedback.
Rockwell Automation maintains current product environmental information on its website at rok.auto/pec.
Allen-Bradley, expanding human possibility, Logix, Rockwell Automation, and Rockwell Software are trademarks of Rockwell Automation, Inc.
Trademarks not belonging to Rockwell Automation are property of their respective companies.
Rockwell Otomayson Ticaret A.Ş. Kar Plaza İş Merkezi E Blok Kat:6 34752, İçerenkÖy, İstanbul, Tel: +90 (216) 5698400 EEE YÖnetmeliğine Uygundur