Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3...

207
EXPERION PKS RELEASE 501 Batch Implementation Guide EPDOC-X161-en-501A February 2018

Transcript of Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3...

Page 1: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

EXPERION PKSRELEASE 501

Batch Implementation GuideEPDOC-X161-en-501A

February 2018

Page 2: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

DisclaimerThis document contains Honeywell proprietary information. Information contained herein is to beused solely for the purpose submitted, and no part of this document or its contents shall bereproduced, published, or disclosed to a third party without the express permission of HoneywellInternational Sàrl.

While this information is presented in good faith and believed to be accurate, Honeywell disclaimsthe implied warranties of merchantability and fitness for a purpose and makes no expresswarranties except as may be stated in its written agreement with and for its customer.

In no event is Honeywell liable to anyone for any direct, special, or consequential damages. Theinformation and specifications in this document are subject to change without notice.

Copyright 2018 - Honeywell International Sàrl

- 2 -

Page 3: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Contents 3

Chapter 1 - About This Guide 141.1 Revision history 14

1.2 Basic concepts and terms 14

Chapter 2 - Configure Batch Preferences 212.1 Batch Preferences tab 21

2.2 Manage intercluster peer-to-peer tab 24

2.2.1 Example for configuring intercluster peer-to-peer communication from BatchPreferences 27

2.3 Inter Cluster Look Up tab 28

2.4 QVCS tab 28

Chapter 3 - Build an equipment model 303.1 Building a Map block type 32

3.1.1 Creating a Map block type 33

3.1.2 Common guidelines for creating functions/block references/parameterreferences 34

3.1.3 Function references 34

3.1.4 Block references 38

3.1.5 Parameter references 41

3.2 Building a Unit class 45

3.2.1 Creating a Unit class 47

3.2.2 Associating a Map block type with a Unit class 47

3.3 Building a Unit instance 49

3.3.1 Instantiating a Unit instance from a Unit class 50

3.3.2 Validating a Unit instance 54

3.3.3 Validation log details 56

3.3.4 Loading a Unit instance 57

Chapter 4 - Building a Master Recipe 584.1 About Context Pane 59

4.2 About primary unit 59

4.3 About Unit Selection tab 60

4.4 About unit passing mechanism 61

4.5 Creating a Master Recipe 62

4.5.1 Prerequisites 62

4.5.2 To create a Master Recipe 63

- 3 -

Page 4: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

4.5.3 Next steps 64

4.5.4 Associating a Unit class/UCM to a Master Recipe 64

4.6 Common ways of adding different recipe layers in a MasterRecipe 68

4.6.1 Adding a Function in a Master Recipe 69

4.6.2 Adding a Master Recipe from a context pane into a Master Recipe 70

4.7 Building Expressions for Master Recipes 71

4.7.1 Building Expressions using an indirect reference 73

4.8 Alternate ways of adding different recipe layers in a MasterRecipe 76

4.8.1 Adding a Phase block type in a Master Recipe 76

4.8.2 Adding a Master Recipe (Proxy Master Recipe) in a Master Recipe/RCM 77

4.8.3 Adding an RCM or SCM in a Master Recipe/RCM 78

4.8.4 Example for using an RCM or an SCM configured to use HISTVALUE andRECTARGET as a child of a Master Recipe/Control Recipe 80

4.9 Configuring unit passing parameters 82

4.9.1 Prerequisites 82

4.9.2 To configure unit passing parameters 82

4.10 Configuring the number of Control Recipes for a MasterRecipe 83

4.10.1 Prerequisites 84

4.10.2 To configure number of Control Recipes for a Master Recipe 84

4.11 Configuring activities for a Master Recipe 85

4.11.1 Prerequisites 85

4.11.2 To configure activities for a Master Recipe 85

4.12 Validating a Master Recipe 86

4.12.1 Prerequisites 87

4.12.2 To validate a Master Recipe 87

4.12.3 Next steps 88

4.13 Loading a Master Recipe 88

4.13.1 Prerequisites 88

4.13.2 To load a Master recipe 88

Chapter 5 - Unit Configuration, Passing, and Acquisition 905.1 About unit acquisition 90

5.2 Unit configuration using drag and drop method 91

5.2.1 To configure a unit using drag and drop method 91

5.2.2 Next steps 92

- 4 -

Page 5: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

5.3 Unit configuration from Unit Selection tab 92

5.3.1 Guidelines and considerations for unit configuration from Unit Selection tab 93

5.3.2 Unit configuration using the Unit Selection tab 95

5.4 Unit configuration using a STEP output 99

5.4.1 Prerequisites 99

5.4.2 To select a unit by writing an expression using UNITNUM[x] and NUMparameters 100

5.4.3 To acquire a unit by writing an expression using UNITACQFL[x] parameter 102

5.4.4 Next steps 103

5.5 About "Acquire On Behalf (ACQONBEHALF)" option 103

5.6 Configuring unit acquisition using ACQONBEHALFparameter 105

5.6.1 Prerequisites 105

5.6.2 To configure unit acquisition using the ACQONBEHALF parameter at all childrecipe layers 105

5.6.3 To configure unit acquisition at the parent recipe layer 106

5.6.4 Next steps 106

5.7 Unit selection and acquisition during runtime 106

5.7.1 Prerequisites 106

5.7.2 To select and acquire a unit during runtime 106

5.8 About releasing resources 107

5.8.1 Releasing the resources using Control Recipe 107

5.8.2 Releasing the resources using an RCM/SCM 109

5.9 Releasing a resource using STEP output 109

5.9.1 To release a resource by writing an expression using UNITRELFL[x]parameter 109

Chapter 6 - Activities Configuration 1116.1 About CEE configuration for activities 111

6.2 About Recipe/SCM configuration for activities 112

6.3 Configuring activities for CEE 112

6.3.1 To configure CEE for activities 112

6.4 Configuring activities for RCM/SCM 113

6.4.1 To configure RCM/SCM for activities 113

6.5 Configuring activities for a Master Recipe 114

6.5.1 Prerequisites 114

6.5.2 To configure activities for a Master Recipe 114

Chapter 7 - Intercluster peer-to-peer communication 115

- 5 -

Page 6: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

7.1 Terms used in intercluster peer-to-peer communication 117

7.2 Intercluster peer-to-peer communication exampleconfiguration 118

7.3 Task sequence for implementing intercluster peer-to-peercommunication 119

7.4 Guidelines for configuring intercluster peer-to-peercommunication 121

7.5 Configuring Phase block type mastership 121

7.5.1 Prerequisites 122

7.5.2 To configure Phase block mastership 122

7.5.3 Changing the Phase block mastership in the current master cluster 122

7.6 About cluster block 123

7.6.1 Guidelines for configuring the cluster block 124

7.6.2 Configuring a cluster block 124

7.6.3 Sharing a public enumeration set across clusters 125

7.6.4 Selecting units across clusters 125

7.7 About proxy blocks 125

7.7.1 Configuring a proxy FTEB block 126

7.7.2 Configuring a proxy node 127

7.7.3 Guidelines for configuring proxy tag 128

7.7.4 Configuring a proxy tag 128

7.8 Validation of proxy blocks 129

7.8.1 Validating a Cluster block 130

7.8.2 Validating a proxy FTEB block 130

7.8.3 Validating a proxy node 130

7.8.4 Validating a proxy tag block 131

7.9 Export and import support for a proxy block 131

7.9.1 Prerequisites 131

7.10 Bulk build support for a proxy tag 132

7.10.1 Prerequisites 132

7.11 About building recipes through intercluster peer-to-peercommunication 132

7.11.1 Intercluster peer-to-peer communication configuration example 132

Chapter 8 - Maintain equipment model 1358.1 Restrictions for modifying enumeration sets 135

8.2 Change parent support for a Phase block/Data block 135

- 6 -

Page 7: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

8.3 Maintaining Phase types 136

8.3.1 Prerequisites 136

8.3.2 To maintain a Phase block type 136

8.3.3 Next steps 137

8.4 Support for change parent by function from Master Recipechart 137

8.4.1 Prerequisites 137

8.4.2 To change parent by function from Master Recipe chart 137

8.5 Maintaining a Map block type 138

8.5.1 Prerequisites 138

8.5.2 To modify a Map block type 139

8.5.3 To delete a Map block function 139

8.5.4 Guidelines for modifying a reference 139

8.6 Maintaining a Unit class 141

8.6.1 Prerequisites 141

8.6.2 To copy a Unit class 141

8.6.3 To delete a Unit class or a Unit instance 142

8.6.4 Support for changing parent of a contained basic block of a Unit class/UCM 143

8.6.5 Deleting a contained block of a Unit class 143

8.6.6 Support for change parent by function from Unit class/UCM 143

8.6.7 Support for change parent from a Unit class/UCM 147

8.7 Import/export of Class-based recipes 150

8.7.1 Component dependencies in Import/Export 150

8.7.2 Export and Import support for enumeration sets 154

8.7.3 Import/Export of Public enumeration holder blocks 155

8.7.4 Import/Export of a Phase block type with parameter type Public enumeration 157

8.7.5 Import/Export of Map block types 159

8.7.6 Import/Export of Unit classes 161

8.7.7 Import/Export of proxy strategies 164

8.8 Batch Search Scenarios 167

8.8.1 Searching for an enumeration set 167

8.8.2 Searching for public enumerations 168

8.8.3 Searching for private enumeration 171

8.8.4 Searching for batch scenarios 174

Chapter 9 - Migration and Interoperability 1829.1 About migrating from R410 to future releases 182

9.2 Pre-R410 to R410 migration considerations 182

- 7 -

Page 8: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

9.2.1 Activity-related configuration 182

9.2.2 Intercluster peer-to-peer communication-related configuration 183

9.3 About interoperability 183

9.4 Considerations for controller OPM from R410 to futurereleases 183

Chapter 10 - Troubleshooting scenarios related to Batch/ProcOpsimplementation 184

10.1 The CEEs Activity Memory Capacity has been reached 185

10.1.1 Diagnostic check 185

10.1.2 Cause 185

10.1.3 Solution 185

10.2 SIMCOMMAND is not allowed with activities 185

10.2.1 Diagnostic check 185

10.2.2 Cause 186

10.2.3 Solution 186

10.3 Failure of synchronizing scheduled parameters at the endof pre-execution 186

10.3.1 Diagnostic check 186

10.3.2 Cause 186

10.3.3 Solution 186

10.4 SCM/RCM cannot transition to inactive state 186

10.4.1 Diagnostic check 186

10.4.2 Cause 186

10.4.3 Solution 186

10.5 Activity is not available in the middle of batch – for Class-based recipe only 187

10.5.1 Diagnostic check 187

10.5.2 Cause 187

10.5.3 Solution 187

10.6 RCM remains in the idle state and does not acquire 187

10.6.1 Diagnostic check 187

10.6.2 Cause 187

10.6.3 Solution 187

10.7 RCM is not idle and does not acquire 188

10.7.1 Diagnostic check 188

10.7.2 Cause 188

10.7.3 Solution 188

- 8 -

Page 9: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

10.8 Phase block displays Child Activity Create Warning 188

10.8.1 Diagnostic check 188

10.8.2 Cause 188

10.8.3 Solution 189

10.9 Activity is not available in CEE and ACTOPT is set to AUTO 189

10.9.1 Diagnostic check 189

10.9.2 Cause 189

10.9.3 Solution 189

10.10 Loss of communication with the controller 189

10.10.1 Diagnostic check 189

10.10.2 Cause 189

10.10.3 Solution 189

10.11 IR Phase block cannot connect to Master Recipe withoutan activity 189

10.11.1 Diagnostic check 189

10.11.2 Cause 189

10.11.3 Solution 190

10.12 Invalid child activity due to Phase block connections 190

10.12.1 Diagnostic check 190

10.12.2 Cause 190

10.12.3 Solution 190

10.13 Internal memory error 190

10.13.1 Diagnostic check 190

10.13.2 Cause 190

10.13.3 Solution 190

10.14 Failure of user-created activity during memory allocation 191

10.14.1 Diagnostic check 191

10.14.2 Cause 191

10.14.3 Solution 191

10.15 Failure of synchronizing scheduled parameters duringinitialization 191

10.15.1 Diagnostic check 191

10.15.2 Cause 191

10.15.3 Solution 191

10.16 Database errors 192

10.16.1 Diagnostic check 192

10.16.2 Cause 192

- 9 -

Page 10: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

10.16.3 Solution 192

10.17 Child Activity Create Fail 192

10.17.1 Diagnostic check 192

10.17.2 Cause 193

10.17.3 Solution 193

10.18 CEE does not contain sufficient memory 193

10.18.1 Diagnostic check 193

10.18.2 Cause 193

10.18.3 Solution 193

10.19 Cannot load NUMACT when too many activities arerunning in CEE 193

10.19.1 Diagnostic check 193

10.19.2 Cause 193

10.19.3 Solution 193

10.20 Cannot start batch due to lack of activity in the controller 194

10.20.1 Diagnostic check 194

10.20.2 Cause 194

10.20.3 Solution 194

10.21 Cannot load NUMACT through Load While Active whenthe controller is in Idle state 194

10.21.1 Diagnostic check 194

10.21.2 Cause 194

10.21.3 Solution 194

10.22 Cannot load CEE because of the tagged objectslimitation 194

10.22.1 Diagnostic check 194

10.22.2 Cause 194

10.22.3 Solution 195

10.23 Cannot create X_DATAINIT block 195

10.23.1 Diagnostic check 195

10.23.2 Cause 195

10.23.3 Solution 195

10.24 Cannot create child activity due to invalid Phase blockconfiguration 195

10.24.1 Diagnostic check 195

10.24.2 Cause 195

10.24.3 Solution 195

- 10 -

Page 11: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

10.25 Cannot create activity when NUMACT is zero 196

10.25.1 Diagnostic check 196

10.25.2 Cause 196

10.25.3 Solution 196

10.26 Cannot allocate CAMs internal memory 196

10.26.1 Diagnostic check 196

10.26.2 Cause 196

10.26.3 Solution 196

10.27 CAM does not reduce NUMACT 196

10.27.1 Diagnostic check 196

10.27.2 Cause 197

10.27.3 Solution 197

10.28 Cannot allow activity when the controller is in SIMFREEZE197

10.28.1 Diagnostic check 197

10.28.2 Cause 197

10.28.3 Solution 197

10.29 Phase block cannot acquire child RCM/SCM in anothercluster 197

10.29.1 Diagnostic check 197

10.29.2 Cause 197

10.29.3 Solution 197

10.30 Child SCM/RCM stops to respond in another cluster 197

10.30.1 Diagnostic check 197

10.30.2 Cause 198

10.30.3 Solution 198

10.31 Child SCM/RCM stops to respond in another clusterusing a Master Recipe 198

10.31.1 Diagnostic check 198

10.31.2 Cause 198

10.31.3 Solution 198

10.32 Child SCM/RCM stops to respond in another clusterusing instance based activities 198

10.32.1 Diagnostic check 198

10.32.2 Cause 198

10.32.3 Solution 198

10.33 Phase block cannot acquire child RCM/SCM usinganother Phase block equipment name 199

- 11 -

Page 12: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

10.33.1 Diagnostic check 199

10.33.2 Cause 199

10.33.3 Solution 199

10.34 Cannot enter an RCM arbitration queue when anotherentity acquires an RCM 199

10.34.1 Diagnostic check 199

10.34.2 Cause 199

10.34.3 Solution 199

10.35 Can enter an RCM arbitration queue when another entityacquires an RCM 199

10.35.1 Diagnostic check 199

10.35.2 Cause 200

10.35.3 Solution 200

10.36 Failure for user activity creation 200

10.36.1 Diagnostic check 200

10.36.2 Cause 200

10.36.3 Solution 200

10.37 Parent RCM hangs and Phase block actively polling forresource RCM/SCM using another Phase blocks Equipmentname 200

10.37.1 Diagnostic check 200

10.37.2 Cause 200

10.37.3 Solution 200

10.38 Resources not available during load time 201

10.38.1 Diagnostic check 201

10.38.2 Cause 201

10.38.3 Solution 201

10.39 Cannot start batch due to lack of memory in thecontroller 201

10.39.1 Diagnostic check 201

10.39.2 Cause 201

10.39.3 Solution 201

10.40 Insufficient memory in the middle of a batch 201

10.40.1 Diagnostic check 201

10.40.2 Cause 201

10.40.3 Solution 201

10.41 Child or parent RCM/SCM name is unresolvable 201

10.41.1 Diagnostic check 201

- 12 -

Page 13: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

10.41.2 Cause 201

10.41.3 Solution 202

10.42 Orderly removal of requester 202

10.42.1 Diagnostic check 202

10.42.2 Cause 202

10.42.3 Solution 202

10.43 Requester cannot acquire resource and resource has noqueue 202

10.43.1 Diagnostic check 202

10.43.2 Cause 202

10.43.3 Solution 202

10.44 Unexpected removal of resource 203

10.44.1 Diagnostic check 203

10.44.2 Cause 203

10.44.3 Solution 203

10.45 Reload of resource after deletion of resource whilerequester.acqstate=error 203

10.45.1 Diagnostic check 203

10.45.2 Cause 203

10.45.3 Solution 203

10.46 Disorderly removal or unexpected damage of requester 204

10.46.1 Diagnostic check 204

10.46.2 Cause 204

10.46.3 Solution 204

10.47 Phase block cannot store all formula parameters 204

10.47.1 Diagnostic check 204

10.47.2 Cause 204

10.47.3 Solution 204

10.48 Phase block cannot read all report parameters 205

10.48.1 Diagnostic check 205

10.48.2 Cause 205

10.48.3 Solution 205

- 13 -

Page 14: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

ABOUT THIS GUIDE

This guide provides information about how to plan, configure, operate, and troubleshoot Experionsequential and procedural control.

1.1 Revision history

Revision Date Description

A February 2018 Initial release of the document.

l Basic concepts and terms

1.2 Basic concepts and terms

The following table defines some common industry and Honeywell-specific terms that areassociated with sequential, procedure, and batch control.

ATTENTION

Honeywell-specific terms are identified with an asterisk (*)

- 14 -

CHAPTER

1

Page 15: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Term/Abbreviation Description

Allocation A form of coordination control that assigns a resource to a batch or unit. Notethat an allocation can be for the entire resource or for portions of a resource.

Alternative path Part of a Recipe Procedure, where only one of the alternative step sequencesis activated.

ApplicationControlEnvironment/ACE*

Experion Level 2/3 supervisory control platform that executes on a Windowsplatform not within a hardened purpose built controller, such as C300.

Arbitration A form of coordination control that determines how a resource should beallocated when there are more requests for the resource than can beaccommodated at one time.

Asset hierarchy A concept in Enterprise Model (similar to Plant Data Model) to define thecontainment-based hierarchical model of equipment entities and unitequipments.

Basic control Control that is dedicated to establishing and maintaining a specific state ofequipment or process condition. It may include regulatory control, interlocking,monitoring, exception handling, and discrete or sequential control.

Batch In this document, a batch means an entity that represents the production of amaterial at any point in the process.

Batch control Control activities and control functions that provide a means to process finitequantities of input materials by subjecting them to an ordered set ofprocessing activities over a finite period of time using one or more pieces ofequipment.

Batch ID A string to identify a Control Recipe. Batch ID is not critical to a Master Recipe.

Batch process A process that leads to the production of finite quantities of material bysubjecting quantities of input materials to an ordered set of processingactivities over a finite period of time using one or more pieces of equipment.

Centralrepositories*

Experion system location for storage of the equipment hierarchy, classinformation, unit tags, recipe parameters, formula parameters, etc. This maybe a combination of applications such as pieces stored as types in ControlBuilder and other pieces stored in the Enterprise Model Builder (EMB).

Child recipe In a recipe that has two or more layers, the child recipe is at lower level, and iscontrolled by the recipe above it. The parent/child concept in layered recipe isnot associated with parent/child relationship in user-defined templatefunction

Class-basedrecipe

Class-based recipes function allows you to build a single recipe against a groupof similar units, and instantiate multiple instances at run-time. Theseinstances can be executed simultaneously against different units. The recipe isbuilt once, tested once, and then run as many instances as needed (within thesystem limits). Without Class-based recipes function, you have to build a recipefor every single unit instance and maintain a large number of recipes. Eachrecipe instance must be tested individually, so the testing effort could besignificant. Class-based recipes function helps reduce the cost on recipeengineering, maintenance, and testing.

Cluster block* A tag block that represents a local cluster for establishing intercluster peer-to-peer communication.

Cluster ID* The unique identifier configured (either automatically or manually) for eachcluster involved in intercluster peer-to-peer.

Common deviceControl Modules*

A Control Module (CM) configured to act as resource to be controlled andacquired by SCMs and Recipes.

Commonresource

A resource that can provide services to more than one requester. Note thatcommon resources are identified as either exclusive-use resources or shared-use resources.

Control Module The lowest level grouping of equipment in the physical model that can carry

- 15 -

Chapter 1 - About This Guide

Page 16: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 1 - About This Guide

out basic control. This term applies to both the physical equipment and theequipment entity.

Control Recipe A type of recipe which, through its execution, defines the manufacture of asingle batch of a specific product. A Control Recipe is the result of loading aMaster Recipe and resides in the controller (real-time).

Control Recipes are instantiated from Master Recipes and they are theexecutable version of the Master Recipes. A Control Recipe is associated with aspecific Unit instance selected by the operator/program, and executes againstthat Unit instance at run-time.

Coordinationcontrol

A type of control that directs, initiates, and/or modifies the execution ofprocedural control and the utilization of equipment entities.

Data block* A non-executable basic block that contains custom parameters. It is createdfrom Phase block type, and contained by recipes or SCMs. Data block istypically used to carry recipe level formula and report parameters, and it is ameans to automatically align formula and report parameters between thePhase block and its underlying recipe or SCM (by using the same datastructure defined in the Phase/Data block).

Enterprise An organization that coordinates the operation of one or more sites.

Equipmentcontrol

The equipment-specific functionality that provides the actual control capabilityfor an equipment entity, including procedural, basic, and coordination control,and that is not part of the recipe.

Equipmentmodule

A functional group of equipment that can carry out a finite number of specificminor processing activities.

Equipmentoperation

An operation that is part of equipment control.

Equipmentphase*

An SCM created to implement a phase to control a specific equipment entity.An equipment phase can be implemented also with a Unit Control Module(UCM) that is linked to a Control Recipe.

Equipmentprocedure

A procedure that is part of equipment control.

Equipment unitprocedure

A unit procedure that is part of equipment control.

Exceptionhandling

Those functions that deal with plant or process contingencies and otherevents which occur outside the normal or desired behavior of batch control.

Exclusive-useresource

A common resource that only one user can use at any given time.

Food and DrugAdministration/FDA

Responsible for compliance with pharmaceutical regulation in and for theUnited States. For more information, refer tohttps://www.honeywellprocess.com/library/support/Documents/Customer/Series_C_IO_Users_Guide_EPDOC-X126-en-430.pdf.

Formula In ISA-S88.01 terms, a category of recipe information that includes processinputs, process parameters, and process outputs. In Honeywell terms, thepreferred/recommended implementation of formula is by using Phase blockformula and report parameters.

Formulaparameterdefinition*

A set of user defined variables used in a Phase block to communicate with theunderlying SCM or Recipe.

Functional assetmodel

A model representing the "Functions" performed within a Batch manufacturingfacility. The functions are clearly defined and define the "contract" between therequesters of the function and the providers, which allows a single Recipe toexecute different actual process actions (such as SCMA on AssetA, SCMB onAssetB, RCMD on AssetD) against different Assets, while providing a singleconsistent view from the requestor (such as FEED).

Handler* The execution engine for a Recipe or a Sequential Control Module.

Header The administrative information in the recipe is referred to as the header.Typical header information may include the recipe and product identification,

- 16 -

Page 17: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

the version number, the originator, the issue date, approvals, status, and otheradministrative information.

The InternationalElectrotechnicalcommission/IEC

The international standards and conformity assessment body for all fields ofelectrotechnology. The American National Standards Institute (ANSI) is amember of IEC. For more information, refer to http://www.iec.ch/.

IEC output* A step output in SCM or RCM of type S_IEC, N_IEC or R_IEC. These outputs areused to control parameters in Common Device Control Modules.

IEC exitprocessing*

The output processing which takes place when a step is about to bedeactivated and the next step is becoming the active step. This is an internalconcept that is not visible to the user. Typical actions are: resetting thedestination value to OFF (for N_IEC outputs) and releasing the device, ifrequired.

The InternationalSociety ofAutomation/ISA

Mission is to maximize the effectiveness of ISA members and otherpractitioners and organizations worldwide to advance and apply the science,technology, and allied arts of instrumentation, systems, and automation in allindustries and applications. For more information, refer to http://www.isa.org/.

Intercluster peer-to-peer*

Communication between two controllers in separate Experion clusters. Impliesthat the configuration for each controller involved is in a separate ERDB.

Layered recipe Multiple recipes that are linked together in a hierarchical fashion (procedure,unit procedure, operation and phase). The recipe at higher level in thehierarchy controls the one(s) below it. The execution of layered recipemanages the acquisition of unit and equipment, formula and report parameterpassing between recipe layers, state tracking and propagation between recipelayers, mode attribute handling etc, in addition to managing execution of thesequences.

Linked phase* A phase that is implemented with a Phase block.

Map block* Map block types define functions and references that can be contained by Unitclasses/Unit.

Master Recipe A type of recipe that accounts for equipment capabilities and may includeprocess cell-specific information.

Class-based Master Recipes are built against Unit classes. They serve as"recipe templates."

Mode The manner in which the transition of sequential functions are carried outwithin a procedural element or the accessibility for manipulating the states ofequipment entities manually or by other types of control.

Null Phase block* Null Phase block is a special configured Phase block which doesn't control anyrecipe or SCM. Null Phase block contains custom parameters. It has the abilityto store formula parameters to their destination, and retrieve report data fromthe source of the report parameters. Null Phase block is normally used to carryrecipe level local formula and report parameters. It can also be used in parallelexecution in a recipe sequence to create delay.

Operation A procedural element defining an independent processing activity consisting ofthe algorithm necessary for the initiation, organization, and control of phases.

Parent recipe One of the recipes in two consecutive layers in layered recipes. Parent recipe isthe one at upper level, and controls the recipe below it. The Parent/Childconcept in layered recipe is completely different from Parent/Child relationshipin User Defined Template function.

Phase The lowest level of procedural element in the procedural control model.

Phase block Phase block is a custom block type used for defining formula and reportparameters. It defines the interface between recipe layers.

Phase levelcontract formulaparameter

Formula data structure owned by a Phase. It is the contract between thePhase block and its underlying Recipe/SCM, therefore it is the same datastructure owned by the underlying Recipe/SCM. The data in this structure getspassed to the underlying recipes/SCMs when the Phase is executed. It is asubset of its parent formula data.

Phase level Report data structure owned by a Phase block. It is the contract between the

- 17 -

Chapter 1 - About This Guide

Page 18: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 1 - About This Guide

contract reportparameter

Phase block and its underlying Recipe/SCM, therefore it is the same datastructure owned by the underlying Recipe/SCM. It stores report data comingfrom underlying Recipes/SCMs, and it is a subset of its parent report data.

Physical assetmodel

A model representing the Physical Equipment upon which the controlstrategies are executed. This model defined to the level of granularity neededto support aspects of Modular Batch Automation that support the definition ofcontrol strategies at a logical functional level for subsequent execution againstthe defined Assets.

Proceduralcontrol

Control that directs equipment-oriented actions to take place in an orderedsequence to carry out some process-oriented task.

Proceduralelement

A building block for procedural control that is defined by the procedural controlmodel.

Procedure The strategy for carrying out a process. In general, it refers to the strategy formaking a batch within a process cell. It may also refer to a process that doesnot result in the production of product, such as a clean-in-place procedure.

ProcedureAnalyst*

Honeywell's product that provides the ability to do post batch executionanalysis, and generate batch reports.

Process A sequence of chemical, physical, or biological activities for the conversion,transport, or storage of material or energy.

Process action Minor processing activities that are combined to make up a process operation.Process actions are the lowest level of processing activity within the processmodel.

Process operation Starting, controlling, and ending a process or procedure.

Procedurefunction chart

A chart of transition conditions and phases to define the execution order inRecipe Procedure.

Process cell A logical grouping of equipment that includes the equipment required forproduction of one or more batches. It defines the span of logical control of oneset of process equipment within an area.

This term applies to both the physical equipment and the equipment entity.

Process control The control activity that includes the control functions needed to providesequential, regulatory, and discrete control and to gather and display data.

Process input The identification and quantity of a raw material or other resource required tomake a product.

Process output An identification and quantity of material or energy expected to result from oneexecution of a Control Recipe.

Processparameter

Information that is needed to manufacture a material but does not fall into theclassification of process input or process output. Examples of processparameter information are temperature, pressure, and time.

Process stage A part of a process that usually operates independently from other processstages and that usually results in a planned sequence of chemical or physicalchanges in the material being processed.

Proxy node* A node that exists for configuration and handle-to-name resolution of a nodeexisting in another cluster. Acts as a stand-in (proxy) for configuring peerreferences to a controller in a separate cluster. It is contained by a clusterblock.

Recipe* Refers to both instance-based recipes (RCMs) and Class-based recipes.

Recipe levelcontract formulaparameter

Formula data structure owned by a recipe. It is the contract between the recipeand the Phase controlling it (if the recipe is not at top level), therefore it is thesame data structure owned by the controlling Phase block. It is passed to thecontained Phases.

Recipe levelcontract reportparameter

Report data structure owned by a recipe. It is the contract between the recipeand the Phase controlling it (if the recipe is not at top level), therefore it is thesame data structure owned by the controlling Phase block. It stores report datacoming from the child recipes/SCMs.

Recipe level local Formula data structure used by recipe sequence. It does not get passed to the

- 18 -

Page 19: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

formulaparameter

contained phases.

Recipe level localreport parameter:

Report data structure used by recipe to store data computed by its sequence.

Recipemanagement

The control activity that includes the control functions needed to create, store,and maintain general, site, and Master Recipes.

Recipe operation An operation that is part of a recipe procedure in a Master Recipe or a ControlRecipe.

Recipe phase A phase that is part of a recipe procedure in a Master Recipe or a ControlRecipe.

Recipe Procedure The part of a recipe that defines the strategy for producing a batch.

Recipe UnitProcedure

A unit procedure that is part of a recipe procedure in a Master Recipe or aControl Recipe.

Requester Requester performs the acquisition. For example, the requester can be aControl Recipe.

Resource Resource is being acquired by the requester. For example, the resource can bea UCM, CM, SCM, or Recipe.

Shared-useresource

A common resource that can be used by more than one user at a time.

Scope ofResponsibility/SOR

A method for identifying functions/operations associated with a given entity.

State The condition of an equipment entity or of a procedural element at a giventime. The number of possible states and their names vary for equipment andfor procedural elements.

Step block A basic block contained in an SCM or Recipe Procedure. The step block canperform a subset of actions defined in IEC 61131 for sequential control andadditional Honeywell-specific actions for the purpose of providing equipmentcontrol, interfacing with or performing basic control or helping in theimplementation of coordination control. The step block is also a generalpurpose block for reading and writing values from within any sequence orprocedure

TotalPlant Batch Honeywell's Batch product. Supports ISA S88.01 batch terminology.

NOTE

TotalPlant Batch (TPB) is a legacy batch product that is not availablefor new sale. However, Honeywell continues to support the existingTotalPlant Batch (TPB) customer. New batch customers arerecommended to buy the Experion Batch Manager (EBM).

Transitioncondition

A directional link between phases with a dynamic or static condition to controlthe execution of the Recipe Procedure. The transition condition is always true.In case of alternative paths, a real condition is required for dynamic selectionof the active path.

Unit A collection of associated control modules and/or equipment modules andother process equipment in which one or more major processing activities canbe conducted. Other things to consider include the following:

l This term applies to both the physical equipment and the equipmentcontrol

l Examples of major processing activities are react, crystallize, and make asolution.

Unit class Unit classes are used for organizing plant equipment into classes from whichyou can build Class-based Master Recipes and instantiate Unit instances. Unitclasses provide you the necessary functions and references for building

- 19 -

Chapter 1 - About This Guide

Page 20: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 1 - About This Guide

Master Recipes.

Unit instance Unit instances are strategies instantiated from a Unit class.

Unit Procedure A strategy for carrying out a contiguous process within a unit. It consists ofcontiguous operations and the algorithm necessary for the initiation,organization, and control of those operations.

Unit supervision The control activity that includes control functions needed to supervise theunit and the unit's resources.

Standard Description

IEC 61131-3 Defines automatic execution of Sequential Function charts in programmablecontrollers.

IEC 61512-1 (AlsoKnown As:ANSI/ISA–88.01–1995 )

Here: Provides examples for different operational modes.

IEC 61512-2 (AlsoKnown As:ANSI/ISA–88.00.02–2001)

Here: Defines automatic execution of procedure function charts.

- 20 -

Page 21: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

CONFIGURE BATCH PREFERENCES

As the name suggests, this task is about configuring your preferences for building and operatingbatches. This task can be accomplished using the Tools > Batch Preferences menu of ControlBuilder.

The Batch Preferences dialog box consists of the following tabs.

l Batch Preferences

l Manage intercluster peer-to-peer

l InterCluster Look Up

l QVCS

Batch Preferences configuration can be exported and imported. During a clean install or after amigration from a pre-R410 release, default values are set for all the fields in the BatchPreferences tabs. However, you can review and re-configure, if required.

ATTENTION

Any changes made on this form are applied only for objects that are created after thechanges are made. It does not apply to already created/running objects.

l Batch Preferences tab

l Manage intercluster peer-to-peer tab

l Inter Cluster Look Up tab

l QVCS tab

2.1 Batch Preferences tab

The Batch Preferences tab is used for configuring activity-related and intercluster peer-to-peerrelated preferences.

While building Master Recipes, you must configure the following options from the BatchPreferences tab. The following figure illustrates the Batch Preferences tab.

- 21 -

CHAPTER

2

Page 22: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

l MAXOWNERS of MR:The MAXOWNERS parameter of the Master Recipe specifies the numberof Control Recipes that can be executed simultaneously against a Master Recipe. The valueconfigured here becomes the default value for the applicable blocks.You cannot execute morethan 20 Control Recipes simultaneously for a Master Recipe. The range for this parameter is 1to 20 and the default value of is 4.

For example, if you specify MAXOWNERS of MR as 10, you can run up to 10 Control Recipessimultaneously for the Master Recipe. If you attempt to run more than 10 Control Recipes, theadditional Control Recipes are queued up and are executed only if any of the Control Recipes inthe owner list completes the execution.

Reconfiguration affects only the Master Recipes that are created after this change is made. Itdoes not affect already created Master Recipes.

l Cluster ID: This parameter specifies a unique identifier for each cluster that is participating inintercluster peer-to-peer communication. The Cluster ID must be manually configured fromthe Batch Preferences tab. The Cluster ID is auto generated when the Batch Preferences isconfigured.

ATTENTION

When there is a change in the Cluster ID, the controller must be reloaded.

l Automatically Generate Batch ID: This parameter specifies the option for automatically creatingBatch ID for batches. By default, this option is enabled.

When this option is enabled, the Batch ID is created automatically. The automaticallygenerated Batch ID contains a part of the activity ID. For example, if the activity ID is$ACTIVITY_9B0116D9181701CB, the Batch ID is 9B0116D9181701CB.

- 22 -

Chapter 2 - Configure Batch Preferences

Page 23: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 2 - Configure Batch Preferences

ATTENTION

Even though "Automatically Generate Batch ID" option is enabled, you can alwaysprovide your own Batch ID when you create an activity through Activity UI or ActivityCreation API. The auto-generated Batch ID is replaced by the one you provide. Also,when this option is disabled, if you try to create a batch without providing a Batch ID,an error message appears and you are prompted to enter a Batch ID.

l Automatically Assign Mastership: This parameter specifies the option of automatic assignmentof Master Cluster ID. By default, this option is enabled.

When this option is enabled, the Cluster ID configured in the Batch Preferences tab isautomatically assigned to the Master Cluster ID (X_MASTERCLSUTERID) parameter of thePhase block type.

The X_MASTERCLSUTERID parameter is available in the Fixed tab of the Phase block type'sPDE.

ATTENTION

You must enable Automatically Assign Mastership option before configuring anynew Phase block type participating in intercluster peer-to-peer communication.

The following figure illustrates the Fixed tab of the Phase block type.

Figure 2.1 Fixed tab of Phase block type

The following options can be configured either during build time or during runtime and areapplicable only for the manually created activities. However, if you make any changes duringruntime, they are applied only to the activities that are created after the changes are made.

Activity Remove Type: This parameter specifies how an activity may be removed after its executionis completed. It can also be configured from the Activity Detail Pane of the Activity Summarydisplay. The default option of Activity Remove Type is "Auto."

The options are as follows:

l Auto: The Activity is automatically removed once it reaches the Post-Execution stage.

l User or App: The Activity must be manually removed using the "Remove" command once itreaches the Post-Execution stage This configuration is propagated to each activity. You canchange the option for the individual activity from Activity Detail Pane of the Activity Summarydisplay.

ATTENTION

When the activity is removed from Activity Summary Display, the activity is disassociatedfrom its Recipe/SCMs.

- 23 -

Page 24: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Activity Reset Options: This parameter specifies the state in which the associatedRCM/SCM/Control Recipe can issue a reset command. By default, the options are disabled (checkbox is cleared). You can select either one or all the options of the Activity Reset Options.

The options are as follows:

l Completed

l Terminal Stopped

l Aborted

The following table explains the behavior of Activity Remove Type and Activity Reset Options. TheActivity Remove Type works in conjunction with the Activity Reset Options.

Activity Remove Type

Activity ResetOptions -Completed,TerminalStopped, orAborted

Auto User or App

Off Recipe is in the Complete, Stopped, orAborted state until it is reset by anoperator or a program. After reset,recipe is automatically removed fromthe Batch list.

Recipe is in the Complete, Stopped, orAborted state until it is reset by anoperator or a program. After reset,recipe remains in the Batch list until itis manually removed.

On After recipe is in Complete, Stopped,or Aborted state, it automaticallyresets and is removed from the Batchlist. Batches disappear once they areno longer running.

After the recipe is in Complete,Stopped, or Aborted state, itautomatically resets but remain on theBatch list until manually removed.

2.2 Manage intercluster peer-to-peer tab

The Manage intercluster peer-to-peer tab is used for configuring the communication number(Comm. #) for each controller participating in intercluster peer-to-peer communication.

The following figure illustrates the Manage intercluster peer-to-peer tab.

- 24 -

Chapter 2 - Configure Batch Preferences

Page 25: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 2 - Configure Batch Preferences

If you are using intercluster peer-to-peer function, you must configure the following options fromthe Batch Preferences tab.

In addition, you must configure the following options from the Manage intercluster peer-to-peertab before loading the controller.

ATTENTION

l The communication start and end range must be within 1000 to 3000 and thecommunication number (Comm. #) of each controller participating in interclusterpeer-to-peer communication must be unique.

l If you modify the communication range for a running controller, refer to the ControlBuilding User's Guide for procedure on how reload a reload a running controller afterconfiguration changes.

l New Comm# Start Range: This parameter specifies the starting range of each controllerparticipating in intercluster peer-to-peer communication for each cluster.

l New Comm# End Range: This parameter specifies the ending range of each controllerparticipating in intercluster peer-to-peer communication for each cluster.

l Set New Comm# In Range: This parameter is used for finding all the non-proxy nodes that areoutside of the range and select a new valid entry within the range. The new values aredisplayed in "New Comm.#" column of "Controller Table."

l Set Proxy New Comm# Range: This parameter is used for finding all the proxy nodes andsetting the communication number from "Origin Comm.#" value to the "New Comm.#" columnin the "Controller Table." This attempt may fail if the "New Comm.#" value is invalid.

l Commit Changes: This parameter is used for acquiring the values configured in the "NewComm.#" and updating the "Controller Table" to reflect the new values.

l Populate Controller Table: This parameter is used for viewing the configured communicationvalue for each controller in the "Controller Table." The "Controller Table" is displayed as followsonly when you click Populate Controller Table.

- 25 -

Page 26: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Figure 2.2 Controller Table

Each field of the "Controller Table" is explained.o Controller Name - Displays the controller name. For example, C200E, ACE, and so on.

o Comm # - Displays the communication number that is assigned to the controller.

o Origin Comm # - Displays the communication number based on the proxy originnode in the remote cluster. The communication number of the proxy node in thiscluster must be the same as that of the origin node in the different cluster. By default,the value of the Origin Comm # is -1.

o New Comm # - Displays the new communication number to override the existingcommunication number. The following changes cannot be made to the New Comm #.If you try to make any changes, respective error messages appear for each scenario.o The communication number cannot be changed for a loaded strategy.

o The new communication number which conflicts with another newcommunication number must not be selected.

o The new communication number conflicting with a communication number thatis already used by another controller must not be selected.

o The new communication number selected for the secondary controller must notbe invalid.

o The selected new communication number cannot be applied to the controllerbecause a container module is assigned to another user.

o Information - Displays the status information of the controller. That is, LoadedStrategy, SECONDARY, and so on.

- 26 -

Chapter 2 - Configure Batch Preferences

Page 27: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 2 - Configure Batch Preferences

ATTENTIONo The "Controller Table" does not always display the changes accurately. If

the modified/expected value is not displayed in the table, switch betweenthe tabs on Batch Preferences to view the expected changes.

o From the "Controller Table," you can modify the communication range(within the start and end range) only for the controllers that are not loaded.If you try to modify the communication range for the loaded controllers, anerror message appears in Information column of the "Controller Table."

For more information on configuring intercluster peer-to-peer communication, refer to theIntercluster peer-to-peer communication.

l Example for configuring intercluster peer-to-peer communication from Batch Preferences

2.2.1 Example for configuring intercluster peer-to-peercommunication from Batch Preferences

Consider that ACE in cluster 1 and redundant C200E Controllers in cluster 2 are participating inintercluster peer-to-peer communication. Assume the following:

1. Cluster 1 is the local cluster and Cluster 2 is the origin cluster.

2. The communication range for cluster 1 is between 2000 and 2250 and cluster 2 is between1000 to 1500.

3. The communication number of ACE in cluster 1 is 2001 and C200E Controller in cluster 2 is1001.

To configure intercluster peer-to-peer communication options in the localcluster from Batch Preferences

1. Choose Tools > Batch Preferences.

The Batch Preferences window opens.

2. On the Batch Preferences tab, configure Cluster ID for a cluster participating in interclusterpeer-to-peer communication.

3. Select Automatically Assign Mastership to specify the Cluster ID for a newly created Phaseblock type.

4. Click the Manage intercluster peer-to-peer tab.

5. Click Populate Controller Table.

The Controller Table pane appears. The communication number (2001) is assigned to the ACEand is displayed in the Comm # column of the Controller Table.

6. If you want to modify the communication number (2001) to a different number, enter the newvalue in New Comm.# column of the Controller Table.

7. Click Commit Changes to save the modified value.

The modified communication number appears in the Comm # column of the Controller Table.

8. Create C200E Controller of origin cluster 2 as a proxy node in cluster 1.

9. Repeat steps 4 and 5 to populate the controller table.

The Controller Table displays the communication numbers of ACE and C200E Controllers. Thecommunication number of C200E Controller is 1001 and the origin communication number isalso 1001.

- 27 -

Page 28: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

10. If you want to modify the communication range to a different range, enter the start and endranges in New Comm# Start Range and New Comm# End Range boxes, respectively.

11. Click Set New Comm# In Range to assign the new communication range.

12. Click Commit Changes to update new communication range in the Controller Table.

13. Click OK to save the changes.

2.3 Inter Cluster Look Up tab

The Inter Cluster Look Up tab is used for resolving the tag name of a controller or an RCM/SCMthat is participating in intercluster peer-to-peer communication.

The following figure illustrates the Inter Cluster Look Up tab.

If a tag does not exist, an error message appears as "a tagged block does not exist with the selectedEEC and IOC." In addition, an internal error appears if the internal software used is notappropriate.

2.4 QVCS tab

The QVCS tab is used for viewing the Qualification and Version Control System properties for BatchPreferences. It also allows you to initiate changes to the qualification state or the apply/removelabels. Note that you need the Version Control System license to use this tab.

The following figure illustrates the QVCS tab.

- 28 -

Chapter 2 - Configure Batch Preferences

Page 29: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 2 - Configure Batch Preferences

- 29 -

Page 30: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

BUILD AN EQUIPMENT MODEL

Equipment model building consists of defining the following.

l Creating a Phase block type to define the following:o a "function" to be used by Unit class definition and recipes.

o the formula and report parameter structure for the "function."

l Configuring the functions that need to be executed by a unit.

l Building Unit classes for organizing plant equipment into classes from which you can buildClass-based Master Recipes and instantiate Unit instances.

l Instantiating Unit instances from Unit classes. At runtime, Control Recipes execute againstthe units.

The following figure illustrates an example equipment model.

Figure 3.1 Example equipment model for Yogurt production

As illustrated in this example, there are two types of units: Mixer and Fermentor. Homogenize(Homog) is one of the functions that need to be executed by Mixers.

The following flow chart describes the sequence of the tasks to be performed for equipmentbuilding.

- 30 -

CHAPTER

3

Page 31: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Figure 3.2 Work flow for equipment building

In the yogurt production example, our Mixer Unit class can perform different functions. Thefunctions for our example are two Material Additions, Temperature Control, Homogenize, andTransfer Out. Hence, the following Phase block types can be created for the functions: HOMOG(for homogenize function), MAT_ADD (for two material addition functions), TEMP_CTL (fortemperature control function), XFR_OUT (for the transfer out function).

The following diagram explains the equipment model tree.

- 31 -

Chapter 3 - Build an equipment model

Page 32: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 3 - Build an equipment model

Figure 3.3 Work flow for Yogurt production example

In this example MIXER_MAP refers to the Map block. The functions configured in the Map blocksare HOMOGENIZE, MILK_ADD, HAND_ADD, TEMP_CONTROL, and TRANSFER_OUT. MIXER refersto the Unit class. MIXER1 (M1) and MIXER2 (M2) are the Unit instances that are instantiated fromthe MIXER Unit class. The functions configured in the Map block type are used to configure aMaster Recipe. At runtime, the values of the Unit instance are used to run the recipes.

l Building a Map block type

l Building a Unit class

l Building a Unit instance

3.1 Building a Map block type

Map block types define functions and references that can be contained by Unit classes/Unit.

Map blocks contained by Unit classes have the "structural" definition of functions and references.Typically, the functions and references are not linked to any specific modules, blocks, orparameters. These functions and references are resolved to specific modules (RCMs/SCMs) andcontainer blocks/basic blocks/parameters respectively when a Unit instance is instantiated fromthe Unit class. Also, these functions and references are used to configure a Master Recipe.

Map block types support the following types of references.

l Function - Defines the functions that may be executed by the Unit class/Unit.

l Block Reference - Defines a block level reference associated with the Unit class/Unit. Onereference provides access to all parameters of the block.

l Parameter Reference - Defines a parameter reference associated with the Unit class/Unit.

As illustrated, the PDE is used to create a Map block type (MIXER_MAP) and define functions andreferences for the block type. These functions and references are then a part of the Unit classwhen the Map block type is dropped into the Unit class.

- 32 -

Page 33: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Figure 3.4 Example of a Map block type configuration

l Creating a Map block type

l Common guidelines for creating functions/block references/parameter references

l Function references

l Block references

l Parameter references

3.1.1 Creating a Map block type

Prerequisites

The following components referred in the Map block type must exist.

l Phase block types

l User-Defined Templates (UDTs)

l Custom Block Types (CBT)

l Referenced Unit classes

To create a Map block type

1. In the Control Builder, choose File > New > Type > Map Block.

The Library & Type dialog box appears.

2. In the Library Name box, select an existing user library name or type a new user library name.

ATTENTION

You must adhere to the following guideline while creating a Map block type.

l The library name of a Map block type can include all characters except Tab,Forward slash (/), Back slash (\), Less than (<), Greater than (>), Double quote("), Asterisk (*), Question mark (?), Vertical bar (|), and Colon (:).

3. In the Type Name box, type a name for the Map block type.

4. Click OK.

The Map block type is added in the Control Builder library and the Map block type icon appearsas follows:

- 33 -

Chapter 3 - Build an equipment model

Page 34: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 3 - Build an equipment model

The Map block Parameter Definition Editor (PDE) opens up. You can continue with adding theMap block references.

For detailed information about maintaining the Map block type, refer to Maintaining a Mapblock type.

ATTENTION

You can rename a CBT parameter. This feature is supported only for Phase andMap blocks. For more information on renaming, refer to section Renaming aCustom Block Type (CBT) Parameter under Configuring a Phase block type of theSequential Control User Guide.

3.1.2 Common guidelines for creating functions/blockreferences/parameter references

l Name must be unique within the Map block. If the name already exists, an error messageappears.

l If the description is empty, the name is used to set the default description.

l The length of the name must not exceed 40 characters.

l The length of the description must not exceed 255 characters.

3.1.3 Function references

- 34 -

Page 35: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

A function is created to refer to an SCM, an RCM, a Master Recipe, a proxy SCM or a proxy RCM,executed for a unit. The functions are defined using Phase types and are used to build a MasterRecipe. A Master Recipe uses the function and the Control Recipe resolves the references duringthe recipe execution. A function (an SCM, an RCM, a Master Recipe, a proxy SCM, or a proxy RCM)must contain a Data block that matches the associated Phase type.

A function contains the following fields in PDE.

l Function Name: Parameter name associated with a reference in a Map block.

l Function Description: Description for a reference in a Map block.

l Library Name: It is combined with Phase type to define the full name of a Phase block type or aPhase block UDT.

l Phase Type: The Phase block type or a Phase block UDT that determines the following:o Phase block type created when a function is configured in the Master Recipe.

o Recipes/SCMs to be specified for the associated function block reference/Data block.

To configure a function, the Phase type must be selected from the available list of Phase types.

The following figure illustrates how function references are created using PDE.

Figure 3.5 Example for function reference created using PDE

The following figure illustrates an example for configuring function reference values in a Mapblock that is used in a Unit class or a Unit instance.

Figure 3.6 Example for function reference in a Map block

After a function reference has been created, and the Map block type has been dropped into a Unitclass, the Unit class is associated with a Master Recipe. The function can be dropped into theMaster Recipe logic. At that time, a Phase block is created and automatically configured to executethe function. The Phase block's NAMEREF parameter value is automatically configured with thefollowing syntax: MR.UNIT[1].MAP.MILK_ADD.FCN.

- 35 -

Chapter 3 - Build an equipment model

Page 36: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 3 - Build an equipment model

For more information about the different layers in Master Recipe, refer to the Common ways ofadding different recipe layers in a Master Recipe and the Alternate ways of adding different recipelayers in a Master Recipe.

Examples for different functions

l Consider that the Phase type is a Phase block type. In this scenario, the function can beconfigured as follows:

o Function name: REACTION

o Phase type: PHASE:REACTION

o Function reference value: R1_REACTION

ATTENTION

R1_REACTION has the data block of type PHASE:REACTION.

l Consider that the Phase type is a Phase block UDT. In this scenario, the function can beconfigured as follows:

o Function name: REACTION_UDT

o Phase type: UDT_EXAMPLE:REACTION_UDT

o Function reference value: R1_REACTION_UDT

ATTENTION

R1_REACTION_UDT has the data block of type REACTION_UDT. Validreferences for R1_REACTION_UDT are those Recipes/SCMs that have aData block created from <UDT_EXAMPLE>:REACTION_UDT, or derivationchildren of <UDT_EXAMPLE>::REACTION_UDT.

For more information about the usage of UDT, refer to "Considerations for creating functionreferences" topic in the Batch Overview and Planning Guide.

l Guidelines for creating functions

l Configuring functions

Guidelines for creating functions

You must adhere to the following instructions while creating a function in a Map block.

l If the function name is empty, the Phase type name (without the library name) associated withthe function is used to set the default name. However, if the function name is already used bythe Map block, a unique default name is assigned by appending a number.

l The name cannot contain any of the following characters.o Space, Tab, Comma (,), Forward slash (/), Back slash (\), Less than (<), Greater than

(>), Single quote ('), Double quote ("), Asterisk (*), Question mark (?), Vertical bar (|),Colon (:), and Semi-colon (;).

- 36 -

Page 37: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

ATTENTION

You can modify an existing Map block function, can delete a function, and can add anew function reference through the Functions tab of the Map block PDE. For moreinformation about modifying a Map block functions and the related rules, refer toMaintaining a Map block type.

For more information about the common guidelines for references, refer to the Commonguidelines for creating functions/block references/parameter references.

Configuring functions

Prerequisites

l Necessary Phase block type to be configured for Recipes/SCM must exist.

l A Map block type exists.

To configure functions

1. In the Control Builder library, double-click a Map block type.

The Map block PDE appears with the Functions tab selected by default.

2. In the Library Name column of any empty row, click the arrow .

A list of existing Control Builder libraries of type Phase block type is auto populated.

3. Select a library name from the list.

4. In the Phase Type column, click the arrow .

A list of existing Phase types in the selected library is auto populated.

- 37 -

Chapter 3 - Build an equipment model

Page 38: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 3 - Build an equipment model

5. Select a Phase type from the list to add a function type to the Map block type.

When you enter a Phase type through selection, by default, a name and a description areadded to the Function Name and the Function Description columns respectively. You canchange the name and description, if required.

6. Click Save.

The Map block type is configured with a function reference.

3.1.4 Block references

A block reference is used in expressions and allows you to create a reference name that providesaccess to multiple parameters or block parameters associated with the reference type.

A block reference can reference basic blocks like data acquisition or an entire template like aControl Module UDT for an analog input. Any parameter of a basic block reference can be accessedthrough the Map block. If a UDT reference is used, any block and parameter in the UDT can bereferenced.

A block reference contains the following fields in PDE.

l Block Reference Name: Parameter name associated with a reference in a Map block.

l Block Reference Description: Description for a reference in a Map block.

l Library Name: It is combined with Block type to define the full name of a Block type or UDT.

l Block Type: An Experion-resident block type or UDT associated with a block reference.

To configure a block reference, a Block type must be selected from the available block types list. ABlock Reference is used when the same data structure is used for all units within a Unit class.

The following figure illustrates how block references are created using PDE.

Figure 3.7 Example for block reference created using PDE

The following figure illustrates an example for configuring block reference values in a Map blockthat is used in a Unit class or a Unit instance.

Figure 3.8 Example for block reference in a Map block

- 38 -

Page 39: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

For more information about the user-defined template (UDT), refer to Sequential Control User'sGuide.

Examples for different block references

l Consider that the block type is a tagged block type. In this scenario, the block reference can beconfigured as follows:

o Block reference name: CommandSCM

o Block type: SYSTEM:SCM

o Block reference value: SCM_01(tag)

This block reference allows the Master Recipe to access the parameters of an SCM. Blockscontained by the SCM are not accessible. The SCM can be commanded by an expression withthe following syntax: MR.UNIT[1].MAP.CommandSCM.BREF.Command:=2. 'MR.UNIT[1].MAP'provides access to the selected unit, '.CommandSCM.BREF' is the block reference, andCommand is a parameter of SYSTEM:SCM.

l Consider that the block type is a UDT. In this scenario, the block reference can be configuredas follows:

o Block reference name: TemperatureCM

o Block type: USER:TIC

o Block reference value: TIC101 (It is an instance derived from the CM UDT USER:TIC)

This block reference allows the Master Recipe to access all parameters of USER:TIC, includingcontained block and parameters. The temperature PV can be read by an expression with thefollowing syntax: MR.UNIT[1].MAP.TemperatureCM.BREF.PIDA.PV. 'MR.UNIT[1]' providesaccess to the selected unit, 'MAP' is the Map block contained in the Unit,'.TemperatureCM.BREF' is the block reference, and PIDA.PV is a block and parametercontained by USER:TIC. This scenario is useful if the Control Modules are identical forequipment.

l Consider that the block type is a basic block. In this scenario, the block reference can beconfigured as follows:

o Block reference name: TemperaturePID

o Block type: REGCTL:PID

o Block reference value: CM_01.PIDA (can be any tag.BB where the BB is derived fromREGCTL:PID)

This block reference is used in the expression and created in the Map block as follows:"MR.UNIT[1].MAP. TemperaturePID.BREF.PV"

l Consider that the block type is a basic block UDT. In this scenario, the block reference can beconfigured as follows:

o Block reference name: NumericUDT

o Block type: USER:NUMERIC_UDT

o Block reference value: TIC101.NUMERIC_UDT_1(tag.BBUDT) where the basic block isderived from USER:NUMERIC_UDT.

This block reference is used in the expression and created in the Map block as follows:"MR.UNIT[x].MAP. NumericUDT.BREF.PV"

- 39 -

Chapter 3 - Build an equipment model

Page 40: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 3 - Build an equipment model

ATTENTION

If the same basic block is used in different Control Modules, you can select thereference type as a basic block or a basic block UDT. For example, if Numeric blocksare used in two different Control Modules then reference type can be selected as abasic block. That is, Numeric or if both basic blocks are derived from the same UDTthen reference type can be Numeric UDT.

For more information about the usage of UDT, refer to "Considerations for creating blockreferences" topic in the Batch Overview and Planning Guide.

l Guidelines for creating block references

l Configuring a block reference

Guidelines for creating block references

You must adhere to the following instructions while creating a block in a Map block.

l If the block name is empty, the UDT name (without the library name) associated with the blockis used to set the default name. However, if the block name is already used in the Map block, aunique default name is assigned by appending a number.

l Name must begin with an alphabetic character. If the name does not begin with an alphabeticcharacter, an error message appears.

l Block type reference name must not contain special characters (!, @, #, $, %, ^, &, *, (, ), _). If thename is entered with a special character, an error message appears.

l Block reference definitions are associated with the CEE-executable block types. Each referencename must be associated to one of the basic blocks/UDT/tag block in Experion.

l Block reference type is an Experion-resident block type or UDT associated with a blockreference. It is used when the same data structure is used for all units within a Unit class.

For more information about the considerations for block references, refer to the"Considerations for creating block references" topic in the Batch Overview and Planning Guide.

For more information about the common guidelines for references, refer to the Commonguidelines for creating functions/block references/parameter references.

Configuring a block reference

Prerequisites

l Necessary custom block types and user-defined templates must exist.

l A Map block type exists.

To configure a block reference

1. In the Control Builder library, double-click a Map block type.

The Map block PDE appears with the Functions tab selected by default.

2. Select the Block Reference tab.

The block reference configuration form appears.

- 40 -

Page 41: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

3. In the Library Name column of any empty row, click the arrow .

A list of existing Control Builder library names appears.

4. Select a library name from the list.

5. In the Block Type column, click the arrow .

An auto generated list of existing block types or UDTs in the selected library appears.

6. Select a block type from the list.

By default, a unique block reference name and description are added in the Block ReferenceName column and Block Reference Description column respectively. The name anddescription may be changed.

7. Save the changes and close the PDE.

Note: You can modify an existing block reference by changing name, description, and blocktype by adhering to rules for modification. You can also add a new block reference and candelete an existing block reference. For more information about modifying an existing blockreference and to know about the related rules, refer to Modifying a block reference.

3.1.5 Parameter references

A parameter reference is created to refer to a parameter during recipe execution. A Master Recipeuses parameter references and resolves them during recipe execution. A parameter reference canbe selected from one of the following parameters available in the Control Builder.

l CEE Resident parameters

l OPC Gateway parameters

l Server Peer Responder or other Subsystem (such as PMD) parameters

However, parameters of blocks that require special connection processing cannot be configuredas a parameter reference. The excluded blocks are:

- 41 -

Chapter 3 - Build an equipment model

Page 42: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 3 - Build an equipment model

l Foundation Fieldbus blocks

l Experion Highway Gateway (EHG) blocks

l Wireless blocks

l R(emote)EE block

l Universal Control Network Interface (UCNIF) block

ATTENTION

l If an OPC Gateway parameter is configured as a parameter reference, the MasterRecipe referring to these parameters must be loaded to an ACE. If the Master Recipereferring to these parameters is loaded to a non-ACE, the parameter reference isinvalid and the Control Recipe execution is blocked.

l If an external reference to a Server Peer Responder or other Subsystem (such asPMD) parameter is configured as a parameter reference of a Unit and the Unit isloaded to a different control execution environment (CEE) than the Master Recipe, itis necessary to create or verify existence of a communication path between theMaster Recipe's execution environment and external reference. This can be done byadding a read of at least one parameter of the Server or other subsystem module tothe Master Recipe's CEE.

A parameter reference contains the following fields in PDE.

l Parameter Reference Name: Parameter name associated with a reference in a Map block.

l Parameter Reference Description: Description for a reference in a Map block.

l Parameter Type: Data type associated with the parameter. It determines the data type to beused while configuring the parameter for reference.

o Integer32 (INT32)

o FLOAT64

o STRING

o Enumeration (ENUM)

o BOOLEAN

The value of the parameter reference must be a parameter with the same type as the parametertype.

The following figure illustrates how parameter references are created using PDE.

Figure 3.9 Example for parameter reference created using PDE

The following figure illustrates an example for configuring parameter reference values in a Mapblock that is used in a Unit class or a Unit instance.

- 42 -

Page 43: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Figure 3.10 Example for parameter reference in a Map block

Example for creating parameter references

Consider that the parameter type is a data type of FLOAT64. In this scenario, the parameterreference can be configured as follows:

l Reference name: TemperatureSP

l Reference type: FLOAT64

l Reference: TIC101.PIDA.SP

This parameter reference is used in the expression and created in the Map block as follows:"MR.UNIT[x].MAP. TemperatureSP := 100"

ATTENTION

The parameter reference type is used only when a single value is common betweenUnits in the Unit class.

l Guidelines for creating parameter references

l Configuring a parameter reference

Guidelines for creating parameter references

You must adhere to the following instruction while creating a parameter in a Map block.

l If the parameter name is empty, the data type name (without the library name) associated withthe parameter is used to set the default name. However, if the parameter name is already usedby the Map block, a unique default name is assigned by appending a number.

For more information about the common guidelines for references, refer to the Commonguidelines for creating functions/block references/parameter references.

Configuring a parameter reference

Prerequisites

A Map block type exists.

- 43 -

Chapter 3 - Build an equipment model

Page 44: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 3 - Build an equipment model

To configure a parameter reference

1. In the Control Builder library, double-click a Map block type.

The Map block PDE appears with the Functions tab selected by default.

2. Select the Parameter Reference tab.

The parameter reference configuration form appears.

3. In the Parameter Type column of an empty row, click the arrow .

A list of existing parameter types appears.

ATTENTION

The parameter type can be one of the following:

l Integer32

l Float64

l String

l Enumeration (ENUM)

l Boolean

4. Select a parameter type from the list as appropriate.

As illustrated, by default, a unique parameter reference name and a description are added inthe Parameter Reference Name and Parameter Reference Description column respectively.

You can also type in a parameter reference name first. A parameter type is added in theParameter Type column by default.

5. Save the changes and close the PDE.

Note: You can modify the name, description, and parameter type of a parameter reference byadhering to rules. For more information about modifying the parameter reference, refer toModifying a parameter reference.

- 44 -

Page 45: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

3.2 Building a Unit class

Unit classes are used for organizing plant equipment into classes from which you can build Class-based Master Recipes and instantiate Unit instances. Unit classes provide the necessary functionsand references for building Master Recipes. If you refer to the example equipment model foryogurt production, Mixer 1 and Mixer 2 units can be grouped to form the Mixer Unit class. Theunits Fermentor 1 and Fermentor 2 can be grouped to form the Fermentor Unit class. Thefunctions for our Mixer Unit class are two Material Additions, Temperature Control, Homogenize,and Transfer Out. The following figure illustrates the functions of the Mixer Unit class.

Figure 3.11 Example Unit class with functions

ATTENTION

If you have only one unit in your process cell, there is no need to create a Unit class.However, as a best practice and considering future expansions, it is recommended to createa Unit class even if you have one unit.

A Unit class is configured as a user-defined template (UDT) of UCM. Hence, all parameters andconfiguration available for UCMs apply to Unit classes as well. A Unit instance is derived from aUnit class based on the UDT. The relationship between a Unit class and a Unit instance is thesame as the relationship between a UDT and it's derivation children. You can build Master Recipesusing a Unit class.

Map blocks provide the functions and references for a Unit class. When a Map block type isdropped into a Unit class, the functions and references defined in the Map block type become partof the Unit class. Additional block types may be dropped into the Unit class and optionallyconnected to perform the following:

l Unit-specific logic

l Store parameter values such as level and temperature

A Unit class supports only the following blocks.

- 45 -

Chapter 3 - Build an equipment model

Page 46: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 3 - Build an equipment model

l All blocks from the LOGIC library

l All blocks from the MATH library

l All blocks from the UTILITY library except ALMWINDOW and ANNPANEL blocks

l AUXCALC block

l ENHAUXCALC block

l DEVCTL block

l Map block type

l Custom data blocks

As illustrated, a Unit class (04Y_MIXER_C) can be created with the Map block (MIXER_MAP). Thefunctions defined by the Map block type YOGURT_LIBRARY:04Y_MIXER_MAP become part of theUnit class when the Map block type is dropped into the Unit class.

Figure 3.12 Unit class

You can also configure a UCM instead of a Unit class for building the Master Recipe. Forinformation about configuring a UCM, refer to the "Configuring a UCM" topic in the SequentialControl User's Guide.

Before building a Unit class, you must be aware of the restrictions for modifying a Unit class andthe differences between a Unit class and a Unit Control Module (UCM).

For more information about the following topics, refer to the Batch Overview and Planning Guide.

l Restrictions for modifying a Unit class

l Differences between a Unit class and a Unit Control Module (UCM)

For information about modifying a Unit class, refer to the Maintaining a Unit class.

l Creating a Unit class

l Associating a Map block type with a Unit class

- 46 -

Page 47: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

3.2.1 Creating a Unit class

To create a Unit class

1. In the Control Builder, choose File > New > Unit Class.

The Library & Type dialog box appears.

2. In the Library Name box, select an existing user library name or type a new user library name.

3. In the Type Name box, type the name for the Unit class.

4. Click OK.

The Unit class is created and the Unit class icon appears in the Library View.

As illustrated, the Unit class 04Y_MIXER_C appears in the user defined library YOGURT_TEMPLATES.

Next steps

To configure the references (function, block, and parameter), refer to the Instantiating a Unitinstance from a Unit class. However, the references are typically configured while building the Unitinstance.

3.2.2 Associating a Map block type with a Unit class

A Master Recipe can use the functions, block, and parameter references defined within a Mapblock type only when the Map block type has been dropped into a Unit class and the Unit class hasbeen associated with the Master Recipe. When the Unit class is instantiated, the functions arelinked to specific sequences (like SCMs) for the unit.

- 47 -

Chapter 3 - Build an equipment model

Page 48: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 3 - Build an equipment model

Figure 3.13 Map block type associated with a Unit class

As illustrated, the Unit class contains the Map block along with its functions, block, and parameterreferences.

Prerequisites

l Unit class exists.

l Map block type exists.

To associate a Map block type with a Unit class

1. In the Control Builder library, double-click the Unit class.

The Unit class chart appears.

2. From the Control Builder library, drag the Map block type in to the Unit class chart.

The Map block instance appears in the Unit class chart.

- 48 -

Page 49: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

3. Double-click the Map block.

The Map block configuration form appears.

4. On the Main tab, type a name for the Map block in the Name box. This name represents thecollection of functions and references defined by the Map block type for the Unit class.

5. (Optional) Configure any Function, Block, and Parameter reference default values that arecommon among Unit instances of the Unit class. Configuration of these references is nottypical in a Unit class. The different references for each unit is configured in the Unit instance.

To configure function reference, refer to the Instantiating a Unit instance from a Unit class.

6. Click OK.

The Map block is saved and associated to the Unit class in the Control Builder library.

7. Click Save.

The Unit class is saved with the Map block.

3.3 Building a Unit instance

Unit instance is an instantiation of a Unit class. A Unit instance defines a specific CM, SCM, RCM,and/or Master Recipe that the unit executes against using the Map block.

A Unit instance can be built without a Unit class. However, as a best practice, it is recommended tobuild a Unit class considering the future expansions.

For more information about the blocks supported, refer to the Building a Unit class.

- 49 -

Chapter 3 - Build an equipment model

Page 50: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 3 - Build an equipment model

Figure 3.14 Unit instances M1 and M2 from Unit class Mixer

As illustrated, Unit class Mixer is instantiated and configured to represent physical units M1 andM2. As part of instantiation, the functions (MAT_ADD, TEMP_CTL, HOMOG, and XFEROUT) presentin the Unit class are propagated to the units so Control Recipes created from a Master Recipeassociated with the Unit class can use the functions during runtime. For more information aboutusing the functions in a Master Recipe, refer to Creating a Master Recipe.

l Instantiating a Unit instance from a Unit class

l Validating a Unit instance

l Validation log details

l Loading a Unit instance

3.3.1 Instantiating a Unit instance from a Unit class

Prerequisites

l Unit class exists.

l Function references configured in a Map block type must have the Data block of the samePhase block type. (optional)

l Control strategies and Recipes/SCMs to be referenced by the unit must exist.

- 50 -

Page 51: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

To instantiate a Unit instance from a Unit class

1. In the Control Builder library, right-click the Unit class and click Instantiate.

The Unit class instance is added to the Control Builder Project tree with a default name. Ifrequired, you can retain the name or you can modify as appropriate.

For example, consider that you are instantiating the Unit class 04Y_MIXER_C. An instance of04Y_MIXER_C with a default name 04Y_MIXER_C_1 appears in the Source and Destinationcolumn. You can modify the default name in the Destination column as 04YM1_UNIT. 04YM1_UNIT appears in the Project tree along with the Map block MIXER_MAP configured in the Unitclass 04Y_MIXER_C.

2. Click Finish.

The Unit instance is added in the Control Builder Project tree and the Map block present in theUnit class also appears in the Unit instance.

In the Map block configuration form you can refer a function, a parameter reference, or ablock reference to the Map block contained by a Unit class.

The reference can be a name of an SCM, an RCM, a Master Recipe, a proxy SCM, or a proxyRCM that executes for the function of a Unit. The function reference must have a Data blockthat matches with associated function type.

To configure a function reference

1. From the Project view, double-click a Unit class/UCM.

The Unit class/UCM chart view opens.

2. Double-click the Map block instance contained by the Unit class/UCM.

The Map block configuration form appears.

3. Click the Function Reference tab.

4. In the Reference column, click the Point Picker

The Point Selection window appears to select a reference value for the function.

An error occurs if the reference does not adhere to the following rule.

l The reference value must be a Recipe/SCM that has a Data block that matches the Phasetype of the function. The Data block matches the Phase type of the function if the Datablock has been created from the Phase type of the function, or it has been created from aderivation child of the Phase type of the function.

- 51 -

Chapter 3 - Build an equipment model

Page 52: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 3 - Build an equipment model

If a default reference value is configured in the Unit class, the value is automaticallypropagated to a Unit instance on creation. This is useful if multiple or all units of the Unit classuse the same value for the reference. You may change the value if required.

If you click Function Reference tab, the Point Selection window lists all Recipes/SCMs withData blocks that match the Phase type of the function.

5. Select a value of function from the list.

6. Click OK.

The function reference is associated to the Map block.

To configure a block reference

1. In the Control Builder library, right-click a Map block instance contained by a Unit class/UCMand select Block Properties.

2. Click the Block Reference tab.

3. In the Reference column, click the Point Picker

The Point Selection window appears to select a reference value for the block reference.

An error occurs if the reference does not adhere to the following rule.

l The reference value must be a block that matches the block type of the block reference.The block matches the block type of the block reference if the block has been created fromthe block type of the block reference, or it has been created from a derivation child of theblock type of the block reference.

If a default reference value is configured in the Unit class, the value is automaticallypropagated to a Unit instance on creation. This is useful if multiple or all units of the Unit classuse the same value for the reference. You may change the value if required.

If you click Block Reference tab, the Point Selection window lists the blocks that match theblock type of the block reference.

4. Select a block name from the list.

5. Click OK.

The block reference is associated to the Map block.

- 52 -

Page 53: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

To configure a parameter reference

1. In the Control Builder library, right-click a Map block instance contained by a Unit class/UCMand select Block Properties.

2. Click the Parameter Reference tab.

3. In the Reference column, click the Point Picker

The Point Selection window appears to select a reference value for the parameter reference.

An error occurs if the target reference does not adhere to the following rule.

l The reference value must be a parameter with a data type that matches the parametertype of the parameter reference.

If a default reference value is configured in the Unit class, the value is automaticallypropagated to a Unit instance on creation. This is useful if multiple or all units of the Unit classuse the same value for the reference. You may change the value if required.

If you click Parameter Reference tab, the Point Selection window lists the matchingparameters of the selected Recipe/SCM.

4. Select a value of parameter reference from the list.

5. Click OK.

The parameter reference is associated to the Map block.

For example, consider that you are configuring the XFEROUT function in the MAP blockMIXER_MAP. You may select the Function Reference from the Point Selection window. Thefollowing image illustrates the example configuration.

- 53 -

Chapter 3 - Build an equipment model

Page 54: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 3 - Build an equipment model

Figure 3.15 Example configuration for adding reference in the Map block

3.3.2 Validating a Unit instance

The following validation is performed for a Unit instance.

l All references (function, block, and parameter references) configured in the Unit instance arechecked for adherence to configuration rules.

l NULL Map reference is detected when a function reference, block reference, and/orparameter reference of a MAP block contained in a Unit instance is not configured.

l Invalid OPC references are detected.

For more information about the OPC references, refer to the Control Builder ComponentsTheory.

The validation of the Unit instance is useful after the following modifications are made.

l Function/block/parameter references have been added to a Map block type that is thederivation parent of a contained Map block of the Unit instance.

l A Map block type (a derivation parent of a contained Map block of a Unit instance) is modified.l

The Data block of an SCM, RCM, Master Recipe, Proxy SCM or Proxy RCM has been deleted orits type has been changed and the SCM, RCM, Master Recipe, Proxy SCM or Proxy RCM might

- 54 -

Page 55: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

be referenced by a function of a contained Map block of the Unit instance.

l New Map blocks are added to the Unit instance, or the Unit class derivation parent of the Unitinstance.

l Any modifications made to a template referenced by a Map block contained by the UCM.

Prerequisites

l Unit instance exists.

l A Map block is contained by the Unit instance and the Map block has been configured.

TIP

UCM and Unit instance are the same.

To validate a Unit instance

1. From the Project view, right-click Unit instance.

2. Select Validate Block Reference.

The Confirm Validation of Block and References dialog box appears.

3. Select the object you want to validate and click Continue.

The Validate Block and References dialog box appears with the validation status.

The following figure displays the Validate Block and References dialog box.

The status of the block references are listed in the ERROR(S) OCCURRED section.

The following list illustrates the various validation statuses and a brief description of eachstatus.

l Pass: The validation of block reference is successful.

l Fail: The validation of block reference has failed.

l Incomplete: The block selected for validation has references other than OPC references.

l Not Validated: The block selected for validation does not have any references.

l Aborted: The validation of block reference is cancelled.

If any error occurs, click View Error log and scroll to the end of the list to view the errors.

- 55 -

Chapter 3 - Build an equipment model

Page 56: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 3 - Build an equipment model

ATTENTION

For more information about the errors, refer to the Control Builder Error CodeReference.

4. Click Close.

3.3.3 Validation log details

The Validate Block and References dialog box displays only the block and its validation status.However, you can view the complete details in the Err_log.txt file.

The Err_log.txt file displays the following information.

l Total number of connections

l OPC References Status

l Block References Summary Status

l Validation status

l User who performed the block reference validation

The following figure illustrates a portion of the error log file that contains validation details.

Figure 3.16 Validation error log file

The OPC Reference Status and the Block References Summary status provide the followinginformation.

- 56 -

Page 57: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

l Total Refs: Total number of references in the block

l Validated Refs: Total number of validated references

l Passed Refs: Total number of references that passed validation

l Failed Refs: Total number of references that failed validation

If you have selected multiple blocks for validation, then the log file lists the validation datasequentially.

If errors are encountered during validation of block references, the error description along withthe error code is listed in the log file.

3.3.4 Loading a Unit instance

After building a Unit instance, it must be assigned and loaded to a CEE.

Prerequisites

l Unit instance exists.

l Controller must be already loaded.

To load a Unit instance

1. From the Control Builder Project tree, select the Unit instance.

2. In the Control Builder toolbar, click Execution Environment Assignment icon.

The Execution Environment Assignment dialog box appears.

3. Select the appropriate Unit instance from the Available Modules list.

4. Select the CEE from the Assign To list.

5. Click Assign.

6. Click Close.

The Unit instance is assigned to the selected CEE and appears in the CEE.

7. Select the assigned Unit instance from the Control Builder Project tree.

8. In the Control Builder toolbar, click Load.

On successful loading, click Close. The Unit instance is loaded to the selected CEE.

- 57 -

Chapter 3 - Build an equipment model

Page 58: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

BUILDING A MASTER RECIPE

In EBM, a Master Recipe can be configured as one of the following:

l General CBR

Note: The General CBR is a non S88 Master Recipe.

l Procedure

l Unit Procedure

l Operation

The following table lists the icons for each of the Master Recipe types in Control Builder/RecipeBuilder.

Master Recipe icon in Control Builder/Recipe Builder Master Recipe type

General CBR

Procedure

Unit Procedure

Operation

TIP

It is recommended to create the Master Recipe from the bottom level. That is, start withOperations then create Unit Procedures, and finally Procedures. This is because,Operations must exist when you have to use them in a Unit Procedure.

- 58 -

CHAPTER

4

Page 59: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

4.1 About Context Pane

Context Pane is a tree view, which includes the SCM library by default. The predefined block types(including HANDLER, STEP, SYNC, and TRANSITION) available in the SCM library can be usedduring recipe building. The units (Unit Class/UCM) are dragged from the Project view or the libraryview into the Context Pane to define the units the Master Recipe executes. These are the units tobe selected and optionally acquired during the recipe execution.

By default, the Context Pane is open. However, the Context Pane can be closed/hidden. If it isclosed, right-click the Master Recipe chart and select "Display Context Pane" to open the ContextPane. The following figure depicts the Context Pane.

Figure 4.1 Context Pane

The Context Pane displays the following components during recipe building.

l Unit class/UCM. In the above example, the unit is displayed as UNIT[1] = (04Y_MIXER_C). 04Y_MIXER_C is the name that is presented to the Operator during Unit selection. UNIT[1] is theparameter name and index that is used by the Master Recipe 04YM_3_MAKING to referenceparameters of the unit.

l Any Map block contained by the Unit class/UCM.

l Other Master Recipes where the Unit class is configured as a primary unit.

4.2 About primary unit

A primary unit determines the Asset for the Batch based on the Unit selection. If a primary unit isnot configured for the Master Recipe, then the asset for the Batch is based on the asset of theMaster Recipe. The primary unit is displayed as the first Unit in the Context Pane of the MasterRecipe and is always referenced as UNIT[1]. If a primary unit is not configured, then UNIT[1] is notused. A unit is configured as a primary unit of a Master Recipe as follows:

- 59 -

Chapter 4 - Building a Master Recipe

Page 60: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 4 - Building a Master Recipe

l When the first Unit Class/UCM is dragged to the Context Pane of a “Unit Procedure” or“Operation” Master Recipe, the Unit Class/UCM is automatically configured as the primaryunit.

l When a Unit Class/UCM is dragged to the Context Pane of a Master Recipe in which theprimary unit is not configured, then you are prompted to set the Unit as the primary. If youselect Yes, the Unit Class/UCM is configured to be the primary unit.

When the Unit class/UCM is configured as the primary unit, the unit is automatically configured tobe acquired when the Control Recipe executes.

4.3 About Unit Selection tab

Unit Selection tab is available in the Master Recipe configuration form. The parameters on the tabare automatically configured as each Unit class/UCM is dragged from the Project view or thelibrary view into the Context Pane. This tab is used to select the Unit class and whether the unitsneed to be acquired during recipe execution. Unless specified explicitly, the units need to beselected at runtime for recipe execution.

If a unit is selected during recipe configuration, the recipe becomes instance-based recipe. Toconfigure a Class-based recipe, the Unit class needs to be selected during recipe configuration.

The following figure illustrates the Unit Selection tab.

Figure 4.2 Unit Selection tab

The following fields are available in the Unit Selection tab for configuring the units.

- 60 -

Page 61: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

l Number of Units (NUMUNITS): Configures the number of units for a Master Recipe.

l A table contains the following columns.o Index: Displays the index of the unit selection to be used to configure unit passing,

unit selection, and unit acquisition. It is used to reference the parameters of the unit.

o Unit Class: Configures the Unit class by selecting the Unit class from the PointSelection window.

o Name: Configures the name to be displayed to the Operator in the Activity display. Bydefault, the Unit class name appears.

o Unit: Selects Unit instance for the Control Recipe to execute against at runtime. Thiscan be modified by the Operator at runtime.

o Acquire?: Configures the acquire option for each unit in each row. If the Acquire? isconfigured as "Yes," the unit is acquired based on the recipe layer. Based on therecipe layer, the unit acquisition occurs as follows:o If the recipe runs in the top layer, the unit is acquired.

o If the recipe runs in the child layer, the unit is acquired if the unit is not acquiredby its parent.

4.4 About unit passing mechanism

Unit passing is a method of passing a selected unit from a parent recipe layer to a child recipelayer. It is achieved through Phase blocks contained by a Master Recipe. The following illustrationexplains the unit passing mechanism.

Figure 4.3 Unit passing mechanism

The following parameters are introduced to support the unit passing.

l Unit Reference (X_UNITNAMEREF): It retrieves a unit from the recipe.

l Unit Target (X_UNITTARGREF): It stores the unit retrieved from the recipe to the child recipe.

- 61 -

Chapter 4 - Building a Master Recipe

Page 62: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 4 - Building a Master Recipe

The Unit Reference (X_UNITNAMEREF) and Unit Target (X_UNITTARGREF) parameters areautomatically configured during Master Recipe creation. Additional manual configuration of unitpassing is required for the following:

l More than one unit is passed to the child.

l The unit passed to the child is not the primary unit of the child.

ATTENTION

Up to 10 unit passing parameters can be configured in a Phase block contained by a MasterRecipe.

At runtime, the unit is passed as follows:

l If the unit has been selected, it is passed to the child recipe.

l If the selected unit has been acquired by the current recipe layer, the information about thecurrent owner is passed to the child recipe.

This information is stored by the child recipe and is used for unit acquisition.

Once the child recipe execution is complete, the following information is retrieved from the childrecipe.

l current unit selection from the child

l information about the current owner of the unit

l Creating a Master Recipe

l Common ways of adding different recipe layers in a Master Recipe

l Building Expressions for Master Recipes

l Alternate ways of adding different recipe layers in a Master Recipe

l Configuring unit passing parameters

l Configuring the number of Control Recipes for a Master Recipe

l Configuring activities for a Master Recipe

l Validating a Master Recipe

l Loading a Master Recipe

4.5 Creating a Master Recipe

To create a Master Recipe, you need to perform the following tasks.

1. Configure a Data block for the Master Recipe

2. Associate the Unit class/UCM to the Master Recipe

3. Configure the Master Recipe

4. Configure the unit passing parameters (optional)

4.5.1 Prerequisites

l Phase block type of the Data block of the Master Recipe exists.

l Necessary child level recipes must exist only if the Master Recipe is driving anotherRecipe/SCM.

l CEE must be configured and loaded with Number of Activities greater than zero.

- 62 -

Page 63: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

4.5.2 To create a Master Recipe

1. In the Control Builder or Recipe Builder, choose File > New > Class Based Recipe.

2. Click any one of the following submenus.

l General CBR

l Procedure

l Unit Procedure

l Operation

The Master Recipe configuration form appears. The Parameters tab is selected by default.

The Master Recipe with a default name appears in the Project tree.

3. Next to the Data Block Type box, click Browse icon to select a Phase block type that acts as aData block for the Master Recipe when added to it.

The Point Selection window with the list of Phase block types appears.

4. From the list, select a Phase block type and click OK.

The selected Data block appears in the Data Block Type box.

5. In the configuration form, click Main tab.

6. In the Name box, type a name for the Master Recipe or you can retain the default name.

ATTENTION

You can enter a name with length up to 40 characters.

- 63 -

Chapter 4 - Building a Master Recipe

Page 64: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 4 - Building a Master Recipe

7. In the Public Name box, type a name for recipe to be displayed in the Station.. For moreinformation about the Public Name, refer to the Procedure and Sequence Custom DisplayBuilding Guide.

8. On the Activities tab, observe that the User or App option is selected in the Activity Creationoption list by default.

9. Click Arbitration tab.

10. The Maximum Granted Requesters (MAXOWNERS) is set with the value from the BatchPreferences. The value can be modified from the Arbitration tab. It indicates that themaximum number of Control Recipes that can execute simultaneously against the sameMaster Recipe.

11. Click OK.

The Master Recipe opens in the Control chart and appears in the Project tree. A Context Paneattached to it displays the SCM/RCM blocks. This new pane defines the Unit Context Pane forrecipe building.

The Context Pane can be closed/hidden. To open the Context Pane, right-click the MasterRecipe chart and select "Display Context Pane."

4.5.3 Next steps

After a Master Recipe is created, you need to associate it with a Unit class to define referencesavailable in the Map block that can be used to configure a recipe.

l Associating a Unit class/UCM to a Master Recipe

4.5.4 Associating a Unit class/UCM to a Master Recipe

You can associate a Unit class/UCM to a Master Recipe by dragging the Unit class/UCM into theContext Pane.

ATTENTION

The procedure for associating a UCM to a Master Recipe is similar to the procedure forassociating a Unit class to a Master Recipe. The UCM is dragged from the Project view intothe Context Pane of a Master Recipe chart.

Prerequisites

l Master Recipe exists.

l Unit class exists and contains a Map block.

- 64 -

Page 65: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

To associate a Unit class to a Unit procedure or an Operation MasterRecipe

1. Drag the Unit class from library view into the Context Pane of the Master Recipe chart.

For more information about the Context Pane, refer to the Building a Master Recipe.

As illustrated, the Context Pane has the predefined SCM library (including HANDLER, STEP,SYNC, and TRANSITION blocks) and the Unit instances (04Y_MIXER_C and 04Y_FERMENTOR_C) are associated to the Master Recipe (04Y_4_YOGURT).

When a Unit class is added to the Context Pane of a Unit Procedure or Operation, the unit isconfigured in the Unit Selection tab as a primary unit.

ATTENTION

When you drag and drop the Unit class from Project view to the Context Pane, adefault name is set to the Unit selection. To rename the Unit selection, update theNAME parameter available in the Unit Selection tab of the Master Recipeconfiguration. Renaming the Unit class from the Project view does not affect thename of the Unit selection.

2. Click Save.

The Unit class is added to the Context Pane.

- 65 -

Chapter 4 - Building a Master Recipe

Page 66: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 4 - Building a Master Recipe

To associate a Unit class to a Procedure or a General CBR Master Recipe

1. Drag the Unit class from library view into the Context Pane of the Master Recipe chart.

If a primary unit is not configured for the Master Recipe, a confirmation message appears toset the selected Unit class as the primary unit.

2. Click Yes to set the selected Unit class as the primary unit. Or, click No to add the Unit class asUNIT(n) depending on the number of units available in the Context Pane.

The UNIT(n) denotes the number of units associated with the Master Recipe. For example, ifthe UNIT(n) is UNIT(2) then it denotes that there are two units associated with the MasterRecipe and it is the second unit of the Master Recipe.

The Unit class appears in the Context Pane.

For more information about the primary unit, refer to the Building a Master Recipe.

3. Click Save.

To use Unit classes in a recipe, you can also manually select the Unit class from the UnitSelection tab of the Master Recipe configuration form.

To manually select the Unit class from the Unit Selection tab

1. Right-click the Master Recipe and click Module Properties.

The Master Recipe configuration form opens.

2. Click the Unit Selection tab to configure a unit to the Master Recipe.

The following figure displays the Unit Selection tab.

3. Configure the Number of Units (NUMUNITS) parameter.

The rows are added in the table according to the NUMUNITS parameter.

- 66 -

Page 67: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

The maximum limit of NUMUNITS parameter is 50.

4. Click Browse on the Unit Class column.

The Point Selection window opens. A list of Unit classes available in the library appears.

5. Select a Unit class from the list.

6. Click OK.

The selected Unit class appears in the row. By default, the Unit class name appears in theName column. An error message appears if you type a duplicate name in the Name column.

- 67 -

Chapter 4 - Building a Master Recipe

Page 68: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 4 - Building a Master Recipe

7. Click Browse on the Unit column.

The Point Selection window opens. A list of Unit instances instantiated from the Unit class isdisplayed.

8. (Optional) Select a Unit instance from the list.

An error message appears when you enter a unit manually and if the unit is not the instanceof the Unit class.

9. Click OK.

10. Click OK.

Next steps

If you are configuring multiple units and passing the units from the parent recipe layer to the childrecipe layer, refer to the Configuring unit passing parameters. Ensure that the Unit class passedfrom the parent matches the Unit class passed to the child.

4.6 Common ways of adding different recipe layers in a MasterRecipe

You can add different layers (Operations, Phase, Unit Procedure, and Procedure) of a recipe in aMaster Recipe. The following are the common ways through which recipe layers can be added in aMaster Recipe.

l Adding a Function in a Master Recipe

l Adding a Master Recipe from a Context Pane into a Master Recipe

The following are the alternate methods through which recipe layers can be added in the MasterRecipe.

l Adding a Phase block type in a Master Recipe

l Adding a Master Recipe in a Master Recipe

l Adding a Proxy Master Recipe in a Master Recipe

l Adding an RCM in a Master Recipe

l Adding an SCM in a Master Recipe

- 68 -

Page 69: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

l Adding a Function in a Master Recipe

l Adding a Master Recipe from a context pane into a Master Recipe

4.6.1 Adding a Function in a Master Recipe

When you add a function in the Master Recipe chart, the unit passing parameters and theformula/report parameters are automatically configured.

The following parameters of the Phase block are auto-configured.

l Unit Name Reference (X_UNITNAMEREF)

l Unit Target Reference (X_UNITTARGETREF)

l Use Name Reference (X_USENAMEREF)

l Resource Name Reference (X_NAMEREF)

Prerequisites

l Unit class containing a Map block with functions defined must exist.

l Master Recipe with Unit class associated with it must exist.

To add a function from a context pane into Master Recipe

1. From the Project view, double-click the Master Recipe.

The Master Recipe chart view opens.

2. In the Context Pane, expand the Unit class configured in the Master Recipe.

3. Drag the function configured in the Map block to the chart view.

The Phase block of the contained function is created in the chart view.

The Phase block is automatically configured to perform the following:

l Execute the child based on the MILK_ADD function.

l Pass the unit selected from the 04Y_MIXER_C class to the child.

l Store formula parameters to the child.

l Retrieve report parameters from the child.

- 69 -

Chapter 4 - Building a Master Recipe

Page 70: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 4 - Building a Master Recipe

4. Save the changes and close the Master Recipe chart.

4.6.2 Adding a Master Recipe from a context pane into a MasterRecipe

When you add a Master Recipe from the context pane into another Master Recipe, the unit passingparameters and the formula/report parameters are automatically configured.

The following parameters are auto-configured.

l Unit Name Reference (X_UNITNAMEREF)

l Unit Target Reference (X_UNITTARGETREF)

l Resource Name (EQUIPNAME)

Prerequisites

l Unit class has been associated with an Operation level Master Recipe.

l Master Recipe with Unit class associated with it must exist.

- 70 -

Page 71: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

To add a Master Recipe from a context pane into Master Recipe

1. From the Project view, double-click the Master Recipe.

The Master Recipe chart view opens.

2. In the Context Pane, expand the Unit class configured in the Master Recipe.

3. From the Context Pane, select and drag the Master Recipe configured in the Unit class to thechart view.

The Phase block of the Master Recipe is created in the chart view. The parameters of thePhase block (Master Recipe) are auto-configured to perform the following:

l execute the child recipe 04YM_3_MAKING.

l pass the unit selected from the 04Y_MIXER_C class to the child.

l store formula parameters to the child.

l retrieve report parameters from the child.

4. Save the changes and close the Master Recipe chart.

4.7 Building Expressions for Master Recipes

Expressions for a Master Recipe consists of the following:

l Parameter references

l Direct references

l Indirect references

You can use direct or indirect (preferred) references to build the expressions in a Master Recipe(04Y_4_YOGURT) to access (for reading and writing) parameters of a Unit class (04Y_MIXER_C)associated with the Master Recipe.

You can access the following types of parameters.

- 71 -

Chapter 4 - Building a Master Recipe

Page 72: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 4 - Building a Master Recipe

l Parameters of Experion (direct reference) using the syntax point.parameter.value

l Parameters of the Unit instance (UCM)

l Parameters of blocks contained by the UCM

l Parameter references of a Map block contained by the UCM

l Parameters or block.parameters of block references of a Map block contained by the UCM

An indirect reference can be used in expressions in the same way a parameter(Tag.Block.Parameter) can be used in an expression. However, an indirect reference has moreparts and complexity than a parameter reference.

The syntax for an indirect reference is MasterRecipe.UNIT[x] where, UNIT[x] is the selected unitname for the index "x" at runtime.

For example, for the Master Recipe 04Y_4_YOGURT, the Context pane displays the units that havebeen configured for the Master Recipe.

Figure 4.4 Master Recipe 04Y4_4_YOGURT

The first unit is displayed as UNIT[1] = (04Y_MIXER_C) where UNIT[1] is a parameter of the MasterRecipe (04Y_4_YOGURT) and 04Y_MIXER_C is the Unit class. At runtime, the Control Recipe createdfrom the Master Recipe executes against a UCM that is selected by the operator or an externalapplication. Since the selected UCM is not known when building the expressions for the MasterRecipe, access to the parameters of the selected UCM is configured using an indirect referencethat is resolved upon selection of the UCM.

After the unit is known, parameters associated with the unit may be accessed:

l 04Y_4_YOGURT.UNIT[1].STATE - provides access to the value of the STATE parameter for theselected UCM.

l 04Y_4_YOGURT.UNIT[1].XFER.PV - provides access to the value of XFER.PV, where XFER is auser-configured block in the 04Y_MIXER_C Unit class.

l 04Y_4_YOGURT.UNIT[1].MIXER_MAP.MIXER_LEVEL.PREF - provides access to the parametervalue associated with MIXER_MAP.MIXER_LEVEL.PREF, where MIXER_MAP is the name of themap block contained in the UCM and MIXER_LEVEL.PREF is a parameter reference of the mapblock. At runtime the Tag.Block.Parameter specified in the selected UCM for the parameterreference is accessed.

l 04Y_4_YOGURT.UNIT[1].MIXER_MAP.TEMPSP.BREF.PV - provides access to the parameter

- 72 -

Page 73: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

value associated with MIXER_MAP.TEMPSP.BREF.PV, where MIXER_MAP is the name of themap block contained in the UCM, the TEMPSP.BREF is a block reference (of typeUTILITY:NUMERIC) of the map block, and PV is a parameter of the NUMERIC block. At runtimethe Tag.Block specified in the selected UCM for the block reference is used.

l Building Expressions using an indirect reference

4.7.1 Building Expressions using an indirect reference

This section provides an example of how to configure a STEP block with a STEP output that storesthe value of a parameter of a unit block reference.

Prerequisites

l Map block type with a block reference exists.

l Unit class with a contained Map block derived from the Map block type exists.

l Master Recipe exists and the Unit class is associated with it.

To build an Expression using an indirect reference

1. From the Project view, double-click the Master Recipe.

The Master Recipe chart is displayed.

2. In the Context Pane, expand the SCM library.

The list of blocks are displayed.

3. From the Context Pane, drag and drop a TRANSITION block into the chart view.

4. Add an expression to the TRANSITION block.

5. Double-click the new STEP output on the STEP block.

The STEP block configuration form is displayed.

6. Click the Points... on the configuration form.

The Point Selection dialog box is displayed.

- 73 -

Chapter 4 - Building a Master Recipe

Page 74: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 4 - Building a Master Recipe

7. Select the recipe and the associated UNIT[1] parameter.

8. Click the Get Choices for Reference to display the Unit class and the contained blocks.

9. Select the Master Recipe and the contained Map block and then select the block referenceparameter.

10. Click the Get Choices for Reference to display the block type associated with the blockreference.

The Point Selection dialog box is displayed.

- 74 -

Page 75: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

11. Select the block type and the parameter.

12. Click OK to close the Point Selection dialog box and complete the expression configuration.

13. Click OK to close the STEP configuration form.

14. Save and close the Master Recipe chart.

- 75 -

Chapter 4 - Building a Master Recipe

Page 76: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 4 - Building a Master Recipe

4.8 Alternate ways of adding different recipe layers in a MasterRecipe

This section describes about the alternate ways to add the recipe layers to the Master Recipe.

The alternate methods are explained in the following order.

l Adding a Phase block type in a Master Recipe

l Adding a Master Recipe or Proxy Master Recipe in a Master Recipe

l Adding an RCM/SCM in a Master Recipe

This method may be used to execute the following:

l Instance based child recipes or SCM that are not designated through a Unit function.

l Child recipes that provide a mechanism to select a Unit during recipe execution. For example, aformula parameter that identifies the selected Unit which can be passed to the child recipe andthe child recipe can select and acquire the Unit by using the step outputs.

l Adding a Phase block type in a Master Recipe

l Adding a Master Recipe (Proxy Master Recipe) in a Master Recipe/RCM

l Adding an RCM or SCM in a Master Recipe/RCM

l Example for using an RCM or an SCM configured to use HISTVALUE and RECTARGET as achild of a Master Recipe/Control Recipe

4.8.1 Adding a Phase block type in a Master Recipe

The following method is useful when the child recipe or SCM does not contain a Data block.

The following parameters needs to be manually configured.

l Formula and report parameters of the Phase block

l Unit Name Reference (X_UNITNAMEREF)

l Unit Target Reference (X_UNITTARGETREF)

l Resource Name (EQUIPNAME)

l Resource Name Reference (X_NAMEREF)

l Use Name Reference (X_USENAMEREF)

Prerequisites

l Phase block type must exist.

l Master Recipe must exist.

To add a Phase block type in a Master Recipe

1. From the Project view, double-click the Master Recipe.

The Master Recipe chart view opens.

2. From the library view, select and drag the Phase block type into the chart view.

The Phase block is created in the chart view.

- 76 -

Page 77: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

3. Double-click the Phase block to open the Module Properties.

4. On the Phase Settings tab, configure the Resource Name (EQUIPNAME) parameter with thename of the child recipe to be executed.

5. On the Formula Parameters and the Report Parameters tabs, observe the formula and reportparameters.

6. Save the changes and close the Master Recipe chart.

4.8.2 Adding a Master Recipe (Proxy Master Recipe) in a MasterRecipe/RCM

This method may be used to execute the following:

l a child Master Recipe or Proxy tag of a Master Recipe that contains a Data block

l a child recipe that provides a mechanism to select a unit during recipe execution

For example, a formula parameter that identifies the selected unit can be passed to the childrecipe and the child recipe can select and acquire the unit using STEP outputs.

ATTENTION

This is the only method to be used when executing a Master Recipe in a different cluster.

For more information about selecting and acquiring the units using the STEP outputs, refer to theUnit configuration using a STEP output.

When you configure a Master Recipe in the Master Recipe chart, the following parameters areautomatically configured.

l Formula/report parameters

l The Resource Name (EQUIPNAME) parameter is auto-configured to be set to the MasterRecipe to be added.

Note: The steps for adding a Proxy tag of a Master Recipe in a Master Recipe/RCM are the samesteps as described below for adding a Master Recipe.

- 77 -

Chapter 4 - Building a Master Recipe

Page 78: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 4 - Building a Master Recipe

Prerequisites

l Master Recipe which needs to be added in the Master Recipe must exist and contain a Datablock.

l Master Recipe must exist.

To add a Project Recipe (Master Recipe) in a Master Recipe/RCM

1. From the Project view, double-click the Master Recipe.

The Master Recipe chart view opens.

2. If you add the project recipe to the RCM, from the Project view, double-click the RCM.

The RCM chart view opens.

3. From the Project view, drag the Master Recipe into the chart view. The Phase block type of theMaster Recipe/RCM is created in the chart view.

ATTENTION

An error message appears when you select a Master Recipe, which does notcontain a data block type to be used in the Master Recipe.

4. On the Phase Settings tab, observe that the Resource Name (EQUIPNAME) parameter is auto-configured.

5. On the Formula Parameters and the Report Parameters tabs, observe that the formula andreport parameters are auto-configured and set to default values.

6. Click OK.

7. Save the changes and close the Master Recipe chart.

4.8.3 Adding an RCM or SCM in a Master Recipe/RCM

This method may be used to execute the following:

l an RCM or SCM that contains a Data block

l a child that is not designated through a Unit function.

- 78 -

Page 79: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

When you configure an RCM or SCM in the Master Recipe/RCM chart, the following parametersare automatically configured:

l Formula/report parameters.

l The Resource Name (EQUIPNAME) parameter is auto-configured to be set to the RCM orSCM.

To add an RCM and Proxy tag of an RCM or SCM in a Master Recipe/RCM are the same steps asdescribed below for adding an SCM.

Prerequisites

l SCM to be added in the Master Recipe must exist and have a Data block.

l Master Recipe/RCM must exist.

To add an RCM or SCM in a Master Recipe/RCM

1. From the Project view, double-click the Master Recipe.

The Master Recipe chart view opens.

2. If you add an SCM to the RCM, from the Project view, double-click the RCM.

The RCM chart view opens.

3. From the Project view, drag the project recipe (SCM) into the chart view.

The data block of the SCM is created in the chart view.

TIP

The parameters of the Phase block (SCM) are auto-configured.

4. On the Phase Settings tab, observe that the Resource Name (EQUIPNAME) parameter is auto-configured.

- 79 -

Chapter 4 - Building a Master Recipe

Page 80: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 4 - Building a Master Recipe

5. On the Formula Parameters and the Report Parameters tabs, observe that the formula andreport parameters are auto-configured.

6. Click OK.

7. Save the changes and close the Master Recipe chart.

4.8.4 Example for using an RCM or an SCM configured to useHISTVALUE and RECTARGET as a child of a MasterRecipe/Control Recipe

A child Phase block in a Master Recipe may be configured to kick off a child RCM or SCM configuredto use HISTVALUE and RECTARGET parameters. If the child executed is always the same RCM orthe SCM, it may be configured by setting the EQUIPNAME to an SCM name and the formulaparameters are manually configured to <SCM name>.RECTARGET[1]. <SCM name>.RECTARGET[2],and so on. The report parameters are configured to SCM.HISTVALUE[1], SCM.HISTVALUE[2], andso on.

If the child Recipe or the SCM is selected at runtime through a Unit map, all children must be ofthe same type and all children must be configured to use HISTVALUE and RECTARGETparameters. There cannot be a mix of two units with SCM children and a third unit with an RCMchild.

You must first configure the equipment model and then the Master Recipe to enable them have achild SCM, which is selected at runtime through a Unit map where the child SCMs for all the unitsare configured to use HISTVALUE and RECTARGET parameters.

As a first step to create/configure an equipment model, you need to create Phase block types thatmay be shared across Unit classes/Unit instances. As mentioned in the Batch Overview andPlanning Guide, Phase block types are used for defining formula and report parameters offunctions contained by Unit classes/Units, and those functions define the "capabilities" of the Unitclasses/Unit instances.

To configure the equipment model for enabling a Master Recipe to have achild SCM selected at runtime through a Unit map

1. Create a Phase block type. For example, YOGURT_LIBRARY:FCN with the formula and reportparameters defined as per the FCN requirements.

2. Create a Map block type. For example, 04_Y_MIXER_MAP.

3. Instead of adding a Function (in this example, FCN to 04_Y_MIXER_MAP), add a blockreference name as FCN with a Library Name as SYSTEM and block type as SCM

.

4. Create a Unit class. For example, 04_MIXER_C.

5. Drag and drop the Map block type into the Unit class.

6. Instantiate two units (for example, 04YM1_UNIT, and 04YM2_UNIT) from the Unit class.

- 80 -

Page 81: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

7. Modify 04YM1_UNIT and set the reference value for FCN in the Map block 04_Y_MIXER_MAPto SCM1.

8. Modify 04YM2_UNIT and set the reference value for FCN in the Map block 04_Y_MIXER_MAPto SCM2.

To configure a Master Recipe to have a child SCM that usesSCMHISTVALUE and RECTARGET parameters

1. Drag and drop the Unit class 04_MIXER_C into the Master Recipe 04_Y_YOGURT.

2. Drag and drop the Phase block type YOGURT_LIBRARY:FCN from the library tree into theMaster Recipe.

3. Perform the following steps to manually configure the Phase block type.

a. Enable the Use Name Reference parameter on the Phase Settings tab of the Phaseblock configuration form.

b. Configure the Resource Name Reference parameter as <Master Recipe name>.UNIT[1].<Map block name>.FCN.BREF on the Phase Settings tab of the Phase blockconfiguration form.

c. Configure the formula value or value reference for each formula parameter on theFormula Parameter tab of the Phase block configuration form.

d. Set the parameter reference to <Master Recipe name>.UNIT[1].<Map blockname>.FCN.BREF.RECTARGETVALUE[index] for each formula parameter on the FormulaParameter tab of the Phase block configuration form so that the parameter in the Phaseblock corresponds to the correct RECTARGET index in the child.

- 81 -

Chapter 4 - Building a Master Recipe

Page 82: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 4 - Building a Master Recipe

e. Set the parameter reference to <Master Recipe name>.UNIT[1].<Map blockname>.FCN.BREF.HISTVALUE[index] for each report parameter on the ReportParameter tab the Phase block configuration form so that the parameter in the Phaseblock corresponds to the correct HISTVALUE index in the child.

4.9 Configuring unit passing parameters

The number of units can be configured and referenced using the UNITPASS[x] and theEQUIPNAME parameters of the Phase block contained by the Master Recipe.

The Phase block supports configuration to pass and retrieve Unit selection between recipe layers.Configuration for unit passing includes the following:

l Number of units to be passed.

l For each unit to be passed, the Unit selection in the Master Recipe to be passed and the targetunit in the child recipe.

ATTENTION

Only units of the Master Recipe can be referenced.

4.9.1 Prerequisites

l Master Recipe must exist.

l Multiple Unit classes exist and are associated with the Master Recipe.

l Phase block must exist in the Master Recipe.

4.9.2 To configure unit passing parameters

1. Double-click the Master Recipe from Project view.

The Master Recipe chart view opens.

ATTENTION

When you configure the Master Recipe from the Context Pane,

l Unit Name Reference (X_UNITNAMEREF) and Unit Target Reference (X_UNITTARGETREF) parameters are auto-configured.

l By default, the Number Of Units (X_NUMUNITS) parameter is configured as 1.

2. Select the Phase block to pass more than one unit.

- 82 -

Page 83: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

3. Double-click the Phase block.

The Phase block configuration form opens.

4. On the Main tab, configure the Number Of Units (X_NUMUNITS) parameter as greater thanone.

Additional rows are added for configuring the unit passing parameters (Unit Name Reference(X_UNITNAMEREF) and Unit Target Reference (X_UNITARGETREF)).

The Unit Name Reference designates the Unit selection to be passed from the Master Recipeto the child. The Unit Target Reference designates the Unit in the child recipe that the Unitselection is passed to and retrieved from.

5. Click Browse icon on the empty row of the Unit Name Reference (X_UNITNAMEREF)parameter.

The Point Selection window opens.

6. Select the recipe and the associated unit passing parameter. The Units are displayed withtheir index in the Context Pane of the Master Recipe . Select the UNITPASS parameter andindex, with the same index as the Unit to be passed to the child recipe.

7. Click OK.

8. The Unit Target Reference designates the Unit in the child recipe that the Unit selection ispassed to and retrieved from. The following provides an indirect reference to a Unit in thechild: 04Y_4_YOGURT.04YF_3_TRANSFER.EQUIPNAME.UNITPASS[1].

04Y_4_YOGURT.04YF_3_TRANSFER.EQUIPNAME supplies the runtime value of the name of thechild recipe of the Phase block (04Y_4_YOGURT.04YF_3_TRANSFER). UNITPASS[1] identifiesthat the second unit in the child is stored to and retrieved from.

Select the UNITPASS parameter and index, with the same index as the Unit to be passed tothe child recipe.

9. Click OK.

The Phase block configuration form closes.

10. Save and close the Master Recipe chart view.

4.10 Configuring the number of Control Recipes for a Master Recipe

The MAXOWNERS parameter of the Master Recipe specifies the number of Control Recipes thatcan be executed simultaneously against a Master Recipe.

- 83 -

Chapter 4 - Building a Master Recipe

Page 84: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 4 - Building a Master Recipe

When a Master Recipe is created, the MAXOWNERS parameter of the Master Recipe is initialized tothe value of MAXOWNERS of MR defined on the Batch Preferences. After the Master Recipe iscreated, the Master Recipe value of the MAXOWNERS parameter may be modified from theArbitration tab of the Master Recipe.

The default value of MAXOWNERS of MR on the Batch Preference is set to 4. Modifications to theMAXOWNERS of MR on the Batch Preference affects the newly created Master Recipes, and doesnot change the MAXOWNERS parameter of the existing Master Recipes.

4.10.1 Prerequisites

Master Recipe must exist.

4.10.2 To configure number of Control Recipes for a Master Recipe

1. Right-click the Master Recipe and click Module Properties.

The Master Recipe configuration form opens.

2. Click the Arbitration tab to configure the number of Control Recipes for a Master Recipe.

The following figure displays the Arbitration tab.

- 84 -

Page 85: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

3. In the Requests Granted section, configure the Maximum Granted Requesters(MAXOWNERS).

ATTENTION

l The default value is auto-populated based on the value of MAXOWNERS of MRin the Batch Preferences.

l You cannot execute more than 20 Control Recipes simultaneously for a MasterRecipe

l At runtime, a child Master Recipe is acquired by its parent Control Recipe toensure that the number of Control Recipes created simultaneously from theMaster Recipe does not exceed MAXOWNERS. A new child Control Recipe iscreated, but is not acquired, therefore the MAXOWNERS and NUMOWNERSparameters of the child Control Recipe are displayed as zero. The name of theparent Control Recipe is displayed as the owner of the child Control Recipe fordisplay navigation.

4. In the Requests Pending section, configure the Maximum Waiting Requesters (QUEUESIZE)based on your requirement.

This parameter is used to configure the number of Control Recipes that can be in queue.

ATTENTION

You cannot create more than 10 waiting requesters for a Master Recipe.

5. Click OK.

4.11 Configuring activities for a Master Recipe

After you have configured a Master Recipe, it is recommended to configure the activity creationoptions for the Master Recipe.

4.11.1 Prerequisites

Master Recipe must exist.

4.11.2 To configure activities for a Master Recipe

1. Right-click the Master Recipe and click Module Properties.

The Master Recipe configuration form opens.

2. Click the Activities tab to configure the activities for a Master Recipe.

3. Configure the Type of Activity (ACTTYPE) as "Batch" or "Procedure" based on yourrequirement.

The Batch Summary Display lists all the activities created as "Batch" and the ProcedureSummary Display lists all the activities created as "Procedure." The Activity Summary Displaylists both type of activities. The Create UI display also lists activities based on the value of thisparameter.

- 85 -

Chapter 4 - Building a Master Recipe

Page 86: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 4 - Building a Master Recipe

4. Configure the Activity Creation option (ACTOPT) as "User or App" or "None" based on yourrequirement.

l If you configure the ACTOPT as "User or App," a Control Recipe can be created from theMaster Recipe.

An activity is associated to a Master Recipe as soon as a Control Recipe is created for it.The Master Recipe appears in the Create Batch UI list and an activity is created.

l If you configure the ACTOPT as "None," the Master Recipe cannot be created as a top levelactivity, and does not appear in the Create Batch UI as an option during activity creation. Ifthe Master Recipe is executed as a child, then the child activity is created.

5. Click OK.

4.12 Validating a Master Recipe

Master Recipe validation can be performed manually as described in this section. Also, the MasterRecipe is validated when it is loaded.

The following references are detected while validating the Master Recipe.

l Unreferenced formula and report parameter is detected when a Data block/Phase block hasan enabled formula or report parameter value that is not referenced by the recipe.

l Invalid OPC references are detected.

For more information about the OPC references, refer to the Control Builder ComponentsTheory.

l Unit classes or UCMs referenced by a Master Recipe. It is recommended that the validation isperformed on the referenced UCMs or the UCMs that are created from the referenced Unitclasses.

l Invalid indirect reference is detected when the indirect references are configured incorrectly.An indirect reference can become invalid when a Unit class is changed before the MasterRecipe is loaded.

l Phase block with mismatched function is detected when a contained Phase block of the recipeis configured as follows:

o The Phase block has a formula or a report parameter reference that is an indirectreference through the EQUIPNAME parameter, and

o The Phase block has been configured with a Unit class function and the containedPhase block type does not match the Function Type of the referenced function.

l Phase block with mismatched EQUPNAME is detected when a contained Phase block of therecipe is configured as follows:

o The Phase block has a formula or a report parameter reference that is an indirectreference through the EQUIPNAME parameter, and.

o The EQUIPNAME parameter value references a Recipe/SCM or Proxy MasterRecipe/RCM/SCM and the Data block of the referenced child does not match thePhase block type of the contained Phase block.

The validation of the Master Recipe is useful after the following modifications are made.

l New parameters have been added to a Phase block type that is contained by a Master Recipeor an RCM.

l Unit classes associated with the Master Recipe have been modified.

l Manual configuration of the Phase block contained by the Master Recipe/RCM has beenperformed for the following scenarios.

- 86 -

Page 87: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

o EQUIPNAME parameter has been modified.

o X_NAMEREF parameter has been modified (applies to Master Recipe only).

o Formula/Report parameters have been enabled.

l The Data block of an SCM, RCM, Master Recipe, Proxy SCM or Proxy RCM has been deleted orits type has been changed and the SCM, RCM, Master Recipe, Proxy SCM or Proxy RCM mightbe referenced by a function of a contained Map block of the Unit instance.

4.12.1 Prerequisites

l Master Recipes and RCMs exist.

l Unit classes or UCMs referenced by a Master Recipe must exist.

l Formula and Report parameters of the Data block/Phase block must be configured.

l OPC references must be configured.

4.12.2 To validate a Master Recipe

1. In the Control Builder library, right-click the Master Recipe.

2. Select Validate Block Reference.

The Confirm Validation of Block and References dialog box appears.

3. Select the object you want to validate and click Continue.

The Validate Block and References dialog box appears with the validation status.

The following figure displays the Validate Block and References dialog box.

The status of the block references are listed in the ERROR(S) OCCURRED section.

The following list illustrates the various validation statuses and a brief description of eachstatus.

l Pass: The validation of block reference is successful.

l Fail: The validation of block reference has failed.

l Incomplete: The block selected for validation has references other than OPC references.

l Not Validated: The block selected for validation does not have any references.

l Aborted: The validation of block reference is cancelled.

If any error occurs, click View Error log and scroll to the end of the list to view the errors.

- 87 -

Chapter 4 - Building a Master Recipe

Page 88: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 4 - Building a Master Recipe

ATTENTION

For more information about the errors, refer to the Control Builder Error CodeReference.

4. Click Close.

4.12.3 Next steps

For more information about the validation log details, refer to the Validation log details.

4.13 Loading a Master Recipe

The Master Recipe you create must be assigned and loaded to a CEE.

ATTENTION

Loading of Master Recipe is not allowed without a CBR license. An error occurs when youload a Master Recipe without CBR license.

4.13.1 Prerequisites

l Master Recipe is created.

l Associated ACE, C200E, C300, SIM-ACE, SIM-C200E, or SIM-C300 controllers are alreadyconfigured.

l For the CEE, the Master Recipe is to be assigned to the Number of Activities (NUMACT)parameter which must be configured on the Batch tab of the CEE configuration form.

ATTENTION

The number of activities can be configured and loaded using the Load Values WhileActive option while CEE is "Active" only if the value has been increased.

Load Values While Active fails if the NUMACT parameter value on the Project view islesser than the NUMACT parameter value in the loaded CEE.

For more information about the NUMACT parameter, refer to the ActivitiesConfiguration.

4.13.2 To load a Master recipe

1. From the Control Builder Project tree, select the Master Recipe.

2. In the Control Builder tool bar, click Execution Environment Assignment icon.

The Execution Environment Assignment dialog box appears.

3. Select the appropriate Master Recipe from the Available Modules list.

4. Select the CEE from the Assign To list.

5. Click Assign.

- 88 -

Page 89: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

6. Click Close.

The Master Recipe is assigned to the CEE.

7. From the Control Builder Project tree, select the Master Recipe and click .

The Master Recipe is loaded to the selected CEE.

- 89 -

Chapter 4 - Building a Master Recipe

Page 90: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

UNIT CONFIGURATION, PASSING, AND ACQUISITION

5.1 About unit acquisition

EBM supports a functionally complete set of operations that can be used for configuring,acquiring, passing, and releasing units. The units needed for the entire batch can be selected atthe top level recipe, prior to the start of the batch. The top level recipe passes the units to thelower layers. You have the option to configure the recipes to acquire all units needed for theentire batch up front by the top level recipe, or acquire the units at each layer when they areneeded.

A unit acquisition mechanism is needed in order to handle multiple recipes sharing the same unit.Unit acquisition happens based on how the Unit acquisition is configured in the Master Recipe.The following are the different methods through which unit configuration can be performed.

l Drag and drop of a unit into the Context Pane and manually select the units to be acquiredfrom the Unit Selection tab

l Write a STEP output expression

l Select "Acquire On Behalf (ACQONBEHALF)" option from the Recipe Settings tab

l Manually select the units during runtime

ATTENTION

If two units of the same Unit class need to be selected at the same time by a Control Recipe,two unit selections must be configured with the same Unit class.

The unit can be passed from a parent recipe layer to a child recipe layer. For more informationabout overview of unit passing mechanism, refer to the Building a Master Recipe.

For more information about configuring the unit passing parameters, refer to the Common waysof adding different recipe layers in a Master Recipe and the Alternate ways of adding differentrecipe layers in a Master Recipe.

l Unit configuration using drag and drop method

l Unit configuration from Unit Selection tab

l Unit configuration using a STEP output

l About "Acquire On Behalf (ACQONBEHALF)" option

l Configuring unit acquisition using ACQONBEHALF parameter

l Unit selection and acquisition during runtime

l About releasing resources

l Releasing a resource using STEP output

- 90 -

CHAPTER

5

Page 91: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

5.2 Unit configuration using drag and drop method

A simplest way of configuring a unit, is by dragging and dropping a Unit class from the library viewto the Context Pane of the Master Recipe. This method is used to configure the Unit class used bythe Master Recipe. Using this method, multiple units may be configured. However, additional unitsare not automatically configured for unit acquisition. The additional units needs to be manuallyconfigured for unit acquisition.

5.2.1 To configure a unit using drag and drop method

1. From Project view, double-click the Master Recipe.

The Master Recipe chart view opens.

2. From the library view, select and drag the appropriate Unit class into the Context Pane of theMaster Recipe.

If the Master Recipe is configured as a "Procedure" or "General CBR" type, a confirmationmessage appears to set the selected Unit class as the primary unit.

If the Master Recipe is configured as a "Unit Procedure" or "Unit Operation" type, the first unitis automatically configured as the primary unit.

3. Click Yes to set the selected Unit class as the primary unit. Or, click No to add the Unit class asUNIT(n) depending on the number of units available in the Context Pane..

The Unit class appears in the Context Pane.

The unit selection is automatically configured in the Unit Selection tab. The following figuredepicts the automatic configuration of the unit.

- 91 -

Chapter 5 - Unit Configuration, Passing, and Acquisition

Page 92: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 5 - Unit Configuration, Passing, and Acquisition

4. On the Unit Selection tab, manually select "Yes" on the "Acquire?" column in the table toconfigure the unit acquisition for the child units.

TIP

The child units can be added by modifying the NUMUNITS parameter value. Toconfigure the child units, refer to the Configuring a unit using the Unit Selectiontab.

In addition, you can also use any of the methods described in the UnitConfiguration, Passing, and Acquisition.

5. Click OK.

6. Click Save.

5.2.2 Next steps

Refer to the Loading a Master Recipe.

5.3 Unit configuration from Unit Selection tab

This is an alternate option to configure the units.

Unit Selection tab is available in the Master Recipe configuration form. The parameters on the tabare automatically configured as each Unit class/UCM is dragged from the Project view or thelibrary view into the Context Pane. This tab is used to select the Unit class and whether the unitsneed to be acquired during recipe execution. Unless specified explicitly, the units need to beselected at runtime for recipe execution.

If a unit is selected during recipe configuration, the recipe becomes instance-based recipe. Toconfigure a Class-based recipe, the Unit class needs to be selected during recipe configuration.

The following figure illustrates the Unit Selection tab.

- 92 -

Page 93: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Figure 5.1 Unit Selection tab

The following fields are available in the Unit Selection tab for configuring the units.

l Number of Units (NUMUNITS): Configures the number of units for a Master Recipe.

l A table contains the following columns.o Index: Displays the index of the unit selection to be used to configure unit passing,

unit selection, and unit acquisition. It is used to reference the parameters of the unit.

o Unit Class: Configures the Unit class by selecting the Unit class from the PointSelection window.

o Name: Configures the name to be displayed to the Operator in the Activity display. Bydefault, the Unit class name appears.

o Unit: Selects Unit instance for the Control Recipe to execute against at runtime. Thiscan be modified by the Operator at runtime.

o Acquire?: Configures the acquire option for each unit in each row. If the Acquire? isconfigured as "Yes," the unit is acquired based on the recipe layer. Based on therecipe layer, the unit acquisition occurs as follows:o If the recipe runs in the top layer, the unit is acquired.

o If the recipe runs in the child layer, the unit is acquired if the unit is not acquiredby its parent.

l Guidelines and considerations for unit configuration from Unit Selection tab

l Unit configuration using the Unit Selection tab

5.3.1 Guidelines and considerations for unit configuration from UnitSelection tab

- 93 -

Chapter 5 - Unit Configuration, Passing, and Acquisition

Page 94: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 5 - Unit Configuration, Passing, and Acquisition

You must adhere to the following guidelines and understand the considerations for configuring aunit from the Unit Selection tab.

l The Unit Selection tab may be used to configure the units for the Master Recipe.

ATTENTION

If a unit is configured to be acquired and if it is not selected before starting the batchthen the recipe does not run. It is the control engineer's responsibility to prompt theoperator to select the unit through interactive instructions.

l In the Unit Class column, when you select a Unit class or Unit instance, by default, the Namecolumn obtains the Unit class name or the instance name unless you type a different name.

l You can copy an existing row to an empty row. The unit details are copied to the emptydestination and a warning message appears; prompting you to name the unit. When youaccept the warning message, the Name column of the new row is renamed. Hence, duplicatevalue is avoided.

l In the Context Pane, if you delete a unit from the middle, the unit in the middle row of the UnitSelection tab is removed if the unit and its parameters are not referenced.

For example, consider that there are three units associated with the Master Recipe. In thisscenario, if you delete the middle unit, the values of the middle row is removed if the unit andits parameters are not referenced.

l If you delete the unit from the Context Pane of the Master Recipe chart, the last row is removedin the Unit Selection tab if the unit and its parameters are not referenced.

l If you delete a primary unit from the Context Pane of the Master Recipe chart, the first row inthe Unit Selection tab is retained without data.

l If you delete a unit of the Unit Selection tab, an error appears if the unit is in use and is notremoved from the form. But if the unit and its parameters are not referenced, the data isremoved.

l If you delete the unit at the middle row in the form, if the unit and its parameters are notreferenced, the data is removed.

l Multiple row copying and removal is not supported in Master Recipe form.

l A row can be copied on an existing row to overwrite unit configuration. An error messageappears on overwrite if the selected unit is already in use.

l If you decrease the value of the NUMUNITS parameter from the form, units from end rowsonwards are removed if they are not referenced.

l If you increase the value of the NUMUNITS parameter from the form, new rows are added atthe end. New row can also be added by right-clicking a row and select Append Row. However,the Insert Rows option is not available in the Unit Selection tab. Though the rows can beappended using the Append Row option, the newly added rows cannot be configured unlessthe NUMUNITS parameter is configured.

l If you decrease the value of the NUMUNITS parameter and the present Unit classes are usedfrom the end row(s) onwards, an error message appears. For example, two Unit classes arepresent in the list and you decrease the value in the NUMUNITS box from two to one when lastUnit classes is in use, the following error message is displayed.

- 94 -

Page 95: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

5.3.2 Unit configuration using the Unit Selection tab

Unit configuration can be performed using the Unit Selection tab of the Master Recipeconfiguration form.

In this scenario, the unit acquisition happens only when the Control Recipe is in "Starting" state.

Prerequisites

l Master Recipes (of type Procedure, Unit Procedure, Operation, and General CBR) must exist.

l Unit class must exist in the library.

To configure a unit using the Unit Selection tab

1. Right-click the Master Recipe and click Module Properties.

The Master Recipe configuration form opens.

2. Click the Unit Selection tab to configure a unit to the Master Recipe.

The following figure displays the Unit Selection tab.

- 95 -

Chapter 5 - Unit Configuration, Passing, and Acquisition

Page 96: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 5 - Unit Configuration, Passing, and Acquisition

3. Configure the Number of Units (NUMUNITS) parameter.

The rows are added in the table according to the NUMUNITS parameter.

The maximum limit of NUMUNITS parameter is 50.

- 96 -

Page 97: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

4. Click Browse on the Unit Class column.

The Point Selection window opens. A list of Unit classes available in the library appears.

5. Select a Unit class from the list.

6. Click OK.

The selected Unit class appears in the row. By default, the Unit class name appears in theName column. An error message appears if you type a duplicate name in the Name column.

7. Click Browse on the Unit column.

The Point Selection window opens. A list of Unit instances instantiated from the Unit class isdisplayed.

- 97 -

Chapter 5 - Unit Configuration, Passing, and Acquisition

Page 98: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 5 - Unit Configuration, Passing, and Acquisition

8. (Optional) Select a Unit instance from the list.

An error message appears when you enter a unit manually and if the unit is not the instanceof the Unit class.

9. Click OK.

10. Select Yes on the Acquire? column to acquire the unit during recipe execution.

- 98 -

Page 99: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

11. Click OK.

ATTENTION

Although the default unit may be selected using the Unit Selection tab during theMaster Recipe configuration, you can modify the unit selection at runtime.

Next steps

Refer to the Loading a Master Recipe.

5.4 Unit configuration using a STEP output

When you want to use a STEP output to acquire a unit during recipe execution, you have toperform the following:

l write an expression to select the unit using UNITNUM (of the Master Recipe) and NUM (of theUnit instance) parameters.

l write an expression to acquire a unit using UNITACQFL[x] (of the Master Recipe) parameter,where x denotes the unit number.

In this scenario, the unit is acquired after a recipe starts its execution.

NOTE

If Common devices are configured in a different cluster, SCM step output cannot be used toacquire/release the common device using DSA.

To release the resource using the STEP output, refer to the Releasing a resource using STEPoutput.

5.4.1 Prerequisites

l Master Recipe configured with Unit class exists.

l Verify the unit selection has not been acquired by a higher level recipe to avoid unitacquisition deadlock.

Before acquiring the unit, ensure the following:

l The unit has been selected.

l Programmatically select and acquire the unit.

l Select the unit using the formula parameter from the parent if the unit is being acquiredwhen it is configured for intercluster peer-to-peer communication.

- 99 -

Chapter 5 - Unit Configuration, Passing, and Acquisition

Page 100: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 5 - Unit Configuration, Passing, and Acquisition

5.4.2 To select a unit by writing an expression using UNITNUM[x]and NUM parameters

1. From Project view, double-click the Master Recipe.

The Master Recipe chart view opens.

2. From the Context Pane, drag the STEP block into the Master Recipe chart.

The STEP block appears in the Master Recipe chart.

3. Click Add in the STEP block.

The empty row is added to the STEP block.

4. Double-click the empty row in the STEP block.

The STEP block configuration form appears.

5. On the Out.#1 tab, click Points.

The Point Selection window appears.

6. Select the Master Recipe and the associated UNITNUM[x] parameter from the list.

7. Click OK.

The selected Master Recipe and the parameter appear in the Output Expression box.

- 100 -

Page 101: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

8. Assign the NUM parameter of the unit to be acquired.

ATTENTION

In order to select the Unit instance for the Master Recipe, assign the NUMparameter of the specific Unit instance, as illustrated in the figure (04Y_4_YOGURT.UNITNUM[1]:=04F1_UNIT.NUM).

If you assign the NUM parameter of the Unit instance that is not configured for theMaster Recipe or associated with the Unit class, no configuration error is reported.However, an error message appears during the STEP execution.

9. Click OK.

10. Save the changes in the Master Recipe chart and close the chart.

The configured unit is selected when the STEP is executed. Using this method, a unit can beselected at each layer.

- 101 -

Chapter 5 - Unit Configuration, Passing, and Acquisition

Page 102: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 5 - Unit Configuration, Passing, and Acquisition

5.4.3 To acquire a unit by writing an expression using UNITACQFL[x]parameter

1. From Project view, double-click the Master Recipe.

The Master Recipe chart view opens.

2. From the Context Pane, drag the STEP block into the Master Recipe chart.

The STEP block appears in the Master Recipe chart.

3. Click Add in the STEP block.

The empty row is added to the STEP block.

4. On the Out.#1 tab, click Points.

The Point Selection window appears.

5. Select the Master Recipe and the associated UNITACQFL[x] parameter from the list.

6. Click OK.

The selected Master Recipe and the parameter appear in the Output Expression box.

7. Assign the number 1 to the expression.

The UNIT(n) denotes the number of units associated with the Master Recipe. For example, ifthe UNIT(n) is UNIT(2) then it denotes that there are two units associated with the MasterRecipe and it is the second unit of the Master Recipe.

8. Click OK.

- 102 -

Page 103: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

9. Save the changes in the Master Recipe chart and close the chart.

The configured unit is acquired when the STEP is executed for the Control Recipe.

ATTENTION

Without selecting the unit using the STEP output, the units can also be selectedwhen the Operator selects the unit during recipe execution and the unit can beacquired using the STEP output.

5.4.4 Next steps

Refer to the Loading a Master Recipe.

For detailed information about configuring the STEP output for releasing the resource, refer to theReleasing a resource using STEP output.

5.5 About "Acquire On Behalf (ACQONBEHALF)" option

"Acquire On Behalf (ACQONBEHALF)" option is configured for a Master Recipe or SCM to indicatethe mechanism for resource acquisition. Resource acquisition can be done in one of the followingscenarios.

l on behalf of the running object (self): Resources acquired using this option are available onlyfor self.

l on behalf of a top level parent: Resources acquired using this option are available for self andchild recipes.

The resources can be units such as child RCMs/SCMs and Common Devices.

By default, for a recipe, resources are acquired by self. However, if one Master Recipe is drivingother Master Recipes and you want to use the same unit for multiple recipes, you can configureACQONBEHALF as "Parent" for the child recipes. The "Acquire On Behalf (ACQONBEHALF)" optionis available in the Recipe Settings tab of the Master Recipe configuration form.

- 103 -

Chapter 5 - Unit Configuration, Passing, and Acquisition

Page 104: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 5 - Unit Configuration, Passing, and Acquisition

Figure 5.2 Recipe Settings tab

The "Acquire On Behalf" configuration does not affect the acquisition of child MasterRecipes/SCMs, if the invoking Phase block is enabled with the following parameters.

l ACQUIREOPT

l EXECUTEOPT

l TERMSTATEOPT

l RELEASEOPT

In such a scenario, the child Master Recipes/SCMs are always acquired by the Control Recipecontaining the Phase block that invokes the Master Recipe/SCM.

In the SCM, the "Acquire On Behalf" configuration is only applicable when the PEERALGOPTparameter is configured as "Auto." In addition, Alias table configuration must be done in the SCM toacquire Common Devices.

RCM does not support "Acquire On Behalf (ACQONBEHALF)" parameter.

"Acquire On Behalf (ACQONBEHALF)" parameter is supported only for recipes within the samecluster.

The "Acquire On Behalf" configuration has no effect on top level Control Recipe or SCM. In such ascenario, self-unit acquisition occurs regardless of the ACQONBEHALF configuration.

This unit information is updated in the parent Control Recipe unit selection.

By default, the unit is selected and acquired by the parent and is not changed by the child recipe.

If the unit is selected and acquired on behalf of parent by the child recipe, the child cannotautomatically release the acquisition of the unit. This is because, the child is not the owner of theunit. If the acquisition is not released, the parent has no knowledge of the selected unit and is theacquisition owner (itself) of the unit. If the parent does not manually release the unit throughrecipe logic, the units are released automatically when the parent transitions to terminal state.

- 104 -

Page 105: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

If a unit was selected by the child, but was not acquired by the child on transition to terminal stateof the child, the parent has knowledge of the selected unit and that there is no acquisition ownerof the unit.

If a unit was selected by the child and the unit is the primary unit of the parent, the Parent Asset ofthe Parent is modified to be Parent Asset of the selected Unit.

Acquisition of a primary unit must only be performed by a child using "Acquire On Behalf"parameter.

ATTENTION

It is not recommended to perform the primary acquisition of more than one layer in alayered recipe hierarchy.

For example, a primary unit of a Unit Procedure must only be acquired by a direct child(Operation). This behavior is not enforced by configuration, but if it is not followed, theProcedure Analyst Equipment Model would be incorrect.

5.6 Configuring unit acquisition using ACQONBEHALF parameter

A Procedure invokes a Unit Procedure, and a Unit Procedure invokes an Operation. In thisscenario, the Unit Procedure and the Operation both acquire on behalf of parent. The objectsacquired by the Unit Procedure and the Operation are owned by the Procedure.

The Common Devices acquired by the SCM/Phase are owned by the Procedure if the SCM/Phaseis configured with ACQONBEHALF parameter as "Parent." Therefore, a Procedure can drive theobjects/Common Devices configured in a recipe at any level using the ACQONBEHALF parameter.

In this scenario, the unit acquisition happens only when the Control Recipe is in "Starting" state.

5.6.1 Prerequisites

l All layers (Procedure, Unit Procedure, Operation, Phase/SCM) must exist.

l Necessary Phase blocks configured in each layer to drive the child must exist.

l If the child is an SCM, Common Device configured with the SCM must exist.

5.6.2 To configure unit acquisition using the ACQONBEHALFparameter at all child recipe layers

1. Right-click the Master Recipe and click Module Properties.

The Master Recipe configuration form opens.

2. On the Recipe Settings tab, configure the Acquire On Behalf (ACQONBEHALF) parameter as"Self" or "Parent."

3. On the Recipe Settings tab, observe that the In Normal Termination (RLSRESNORM)parameter is disabled and the In Abnormal Termination (RLSRESABNORM) parameter isenabled, by default. If the child layer is an SCM, on the Other Settings tab, observe that the InNormal Termination (RLSRESNORM) parameter is disabled and the In Abnormal Termination(RLSRESABNORM) parameter is enabled, by default.

4. Click OK.

5. Click Save and close the Master Recipe chart.

- 105 -

Chapter 5 - Unit Configuration, Passing, and Acquisition

Page 106: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 5 - Unit Configuration, Passing, and Acquisition

5.6.3 To configure unit acquisition at the parent recipe layer

1. Right-click the Master Recipe and click Module Properties.

The Master Recipe configuration form opens.

2. On the Phase Settings tab of the Phase block that is configured in the parent MasterRecipes/RCMs/SCMs, disable the Release Equipment After Execution (RELEASEOPT)parameter.

3. Click OK.

4. Click Save and close the Master Recipe chart.

5.6.4 Next steps

Refer to the Loading a Master Recipe.

5.7 Unit selection and acquisition during runtime

Although you can select the units during Master Recipe configuration, the unit selection can bemodified during the Control Recipe creation. However, the unit acquisition happens when theControl Recipe is in "Starting" or "Running"states depending on the unit acquisition configuration.

In this scenario, the unit selection happens before the Control Recipe is started.

5.7.1 Prerequisites

Activity has been created.

5.7.2 To select and acquire a unit during runtime

1. From the Activity Summary Display, select the activity, and then click the Activity Detail Pane.

The Activity Detail Pane appears.

2. Click the Unit Selection tab.

- 106 -

Page 107: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

3. In the New Value column, select the unit from the list.

4. Click Apply.

The selected unit is updated to the Control Recipe Value column.

5. Select the activity and click Start to create the Control Recipe.

The Control Recipe execution starts and acquires the unit during the "Starting" state.

5.8 About releasing resources

5.8.1 Releasing the resources using Control Recipe

Control Recipes are removed when the Control Recipe transitions to TERMINAL state. Therefore,the Control Recipe releases any acquired resources (Units/CommonDevices/ChildRCM/SCM/Control Recipe) when it transitions to TERMINAL state. However, theControl Recipe does not release any resources that were acquired on behalf of parent. Unitsacquired on behalf of the Control Recipe by its child recipes, are released.

By default, for Master Recipes, the Normal Release resource (RLSRESNORM) parameter is set to"FALSE" and the Abnormal Release resource (RLSRESABNORM) is set to "TRUE."

When Normal Release resource (RLSRESNORM) and Abnormal Release resource(RLSRESABNORM) parameters are enabled for a Master Recipe, the Control Recipe releases theresources (Common Devices/ChildRCM/SCM/Control Recipe) owned on behalf of the parent orself.

ATTENTION

Units acquired by a parent and passed to the child Control Recipe through unit passingmechanism cannot be released.

If a unit was selected and acquired on behalf of parent by the child, the child cannot automaticallyrelease the unit, since the child is not the owner of the unit. The child can release the unit basedon "Release Resources Options" as follows:

- 107 -

Chapter 5 - Unit Configuration, Passing, and Acquisition

Page 108: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 5 - Unit Configuration, Passing, and Acquisition

l If the unit is not released (RLSRESNORM is FALSE), the parent has knowledge of the selectedunit and will be the owner of the unit.

l If the parent does not manually release the unit, the release occurs when the parenttransitions to terminal state.

For example, UnitProc1 invokes Oper1. Oper1 selects and acquires a unit on behalf of UnitProc1.On termination of Oper1, the selection and acquisition information is returned to UnitProc1through unit passing mechanism. The unit is now acquired and owned by UnitProc1. Hence, theunit is released only when UnitProc1 terminates.

When a resource is acquired on behalf of parent, the resource can only be released by the ownerof the resource.

For example, consider that a resource is acquired by a Control Recipe/SCM and needs to bereleased by a different Control Recipe/RCM/SCM. In this scenario, it is the responsibility of theControl Recipe or SCM logic to release the unit. In addition, the acquirer for both objects is aControl Recipe that is a common parent for both objects.

Example: Resource is Common Device

The flow of unit acquisition and release is explained.

PROCEDURE

UNITPROCEDURE1 acquires on behalf of Parent (PROCEDURE) and starts OPERATION1.

OPERATION1 acquires on behalf of parent (PROCEDURE) and starts SCM1.

SCM1 acquires COMMONDEVICE1 on behalf of parent (PROCEDURE) and completes.

OPERATION1 completes.

UNITPROCEDURE1 starts OPERATION2.

OPERATION2 acquires on behalf of parent (PROCEDURE) and starts SCM2.

SCM2 uses COMMMONDEVICE1 and releases (on behalf of PROCEDURE).

In this case, PROCEDURE does not know that COMMMONDEVICE1 was acquired on its behalf.Therefore, the lower levels in the recipe layer need to take care of releasing the resourcesmanually.

Example: Resource is SCM

The flow of unit acquisition and release is explained.

PROCEDURE

l UNITPROCEDURE1 (ACQUIRE ON BEHALF OF PARENT) : UNITPROCEDURE1 acquiresOPERATION1, but does not release OPERATION1 (owned by PROCEDURE)

l UNITPROCEDURE2 (ACQUIRE ON BEHALF OF PARENT) : OPERATION1 (this can be run byUNITPROCEDURE2, because when it attempts to acquire and is successful because acquirefor PROCEDURE who already has acquired it.)

Abort handler for UNITPROCEDURE2 (and UNITPROCEDURE1) must be cleaned up. A STEPoutput can be stored to the Phase block (RELFL) to release the resource. In this case,PROCEDURE does not know that OPERATION1 was acquired on its behalf. Therefore, thelower levels in the recipe layer need to take care of abnormal termination manually. IfUNITPROCEDURE2 (or some other RCM) does not release OPERATION1, it remains acquired;there is no RCM that can automatically release it.

If the ACQONBEHALF parameter is set to "Parent,"

- 108 -

Page 109: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

l The units that are owned by the Control Recipe are released when the Control Recipecompletes.

l The Control Recipe releases the units that are acquired after the execution of a child ofControl Recipe/SCM.

l The Control Recipe releases the resources that are acquired by a Control Recipe/SCM onbehalf of parent after the execution.

5.8.2 Releasing the resources using an RCM/SCM

When Normal Release resource (RLSRESNORM) and Abnormal Release resource(RLSRESABNORM) parameters are enabled for an RCM/SCM, the resources owned by theRCM/SCM on behalf of the parent or self are released.

By default, for RCMs/SCMs, the Normal Release resource (RLSRESNORM) parameter is set to"TRUE" and the Abnormal Release resource (RLSRESABNORM) is set to "TRUE."

ATTENTION

It is recommended that the engineer must set the RLSRESNORM parameter to "FALSE"when the ACQONBEHALF parameter is set to "Parent."

UCM acquired by an RCM is released on termination of the RCM regardless of the normal orabnormal release resource parameters.

Example

PROCEDURE

UNITPROCEDURE1 (ACQUIRE ON BEHALF OF PARENT): UNITPROCEDURE1 acquiresOPERATION1 (ACQUIRE ON BEHALF OF PARENT).

OPERATION1 acquires an SCM (ACQUIRE ON BEHALF OF PARENT)

SCM acquires a Common Device (ACQUIRE ON BEHALF OF PARENT)

When the SCM reaches terminal state, the Common Device is released automatically.

If Normal Termination if "OFF," a STEP output R_IEC is required for releasing the resource.

In this case, PROCEDURE does not know that a Common Device was acquired on its behalf.Therefore, the lower levels in the recipe layer need to take care of releasing the resourcesmanually.

5.9 Releasing a resource using STEP output

It is recommended to release a resource using STEP output if the resource has been acquiredusing STEP output.

5.9.1 To release a resource by writing an expression usingUNITRELFL[x] parameter

1. From Project view, double-click the Master Recipe.

The Master Recipe chart view opens.

2. From the Context Pane, drag the STEP block into the Master Recipe chart.

The STEP block appears in the Master Recipe chart.

- 109 -

Chapter 5 - Unit Configuration, Passing, and Acquisition

Page 110: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 5 - Unit Configuration, Passing, and Acquisition

3. Click Add in the STEP block.

The empty row is added to the STEP block.

4. On the Out.#1 tab, click Points.

The Point Selection window appears.

5. Select the Master Recipe and the associated UNITRELFL[x] parameter from the list.

6. Click OK.

The selected Master Recipe and the parameter appear in the Output Expression box.

7. Assign the number 1 to the expression.

8. Click OK.

9. Save the changes in the Master Recipe chart and close the chart.

The configured unit is released when the STEP is executed for the Control Recipe.

- 110 -

Page 111: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

ACTIVITIES CONFIGURATION

Activity is a mechanism used to “frame” a series of actions that occurs in a plant within a definedbeginning and end time period. An activity is capable of representing everything from a complexseries of actions, (for example, a batch that makes products across multiple units), to a limited setof actions focused on a specific task, (for example, adding material to a mixer). Activities areassociated with Recipes/SCMs, and may be built from a series of Parent and Child Activitiesdependent on the level of modularity and complexity of the actions being framed. An Activity isalso meant to represent the entire lifecycle of a Batch (Pre-Execution, Execution, and Post-Execution), or a series of actions (such as Batch created, Batch started, Batch executed, Batchcompleted, and Batch removed). An Activity is equivalent to a Batch in batch applications, or aProcedure in Procedural Operations.

Activities can be created and accessed from Activity displays. Operators interact with the activitiesfrom Station.

To support activities for Recipes/SCMs, the CEE where the Recipes/SCMs run must be configuredto enable activities. In addition, minimal configuration may be required for each Recipe/SCM.

Refer to the following for more information.

1. For information about overview of activities, refer to the Batch Overview and Planning Guide.

2. For information about activity-related configuration, refer to the Configure BatchPreferences.

3. For information on creating a batch or procedure, refer to the Operator's Guide.

6.1 About CEE configuration for activities

The following parameters must be configured from the CEE configuration form to enableactivities.

l Number of Activities (NUMACT): Determines the maximum number of activities that can becreated in the CEE. It is limited to 1000 and the default value is 0.

ATTENTIONo The number of activities can be increased without inactivating the CEE.

However, if you increase the number of activities, you need to perform a"Load Values While Active" on the CEE to apply the change in runtime.

o The time taken to load the CEE varies based on the number of activities(NUMACT parameter) configured in the CEE block.

l Max init state period for Activity (MAXACTPERIOD): Speeds up the initialization of activitiesthat are associated with SCMs and recipes with slow execution periods. The value of thisparameter applies to all manually created activities in the CEE. This parameter can be used toreduce the time between when an activity is created and when an Operator or API can

- 111 -

CHAPTER

6

Page 112: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

interact with the activity.

Example: If the MAXACTPERIOD is 500 ms and the PERIOD of the associated RCM/SCM is 2seconds, then the activity executes with a period of 500 ms during the initialization state. Oncethe initialization is complete, the activity aligns its execution period with the associatedRCM/SCM. The value of this parameter applies to all the manually-created activities in theassociated CEE.

6.2 About Recipe/SCM configuration for activities

Recipes/SCMs can be configured as a batch or procedure type of Activities. In addition, activities forRCM/SCMs can be configured to be created automatically and/or by an operator or a program.

The following parameters must be configured from the Recipe/SCM configuration form foractivities.

l Type of the Activity (ACTTYPE): Determines the type of activity associated with the Recipe/SCM.

The default value for Recipes is "Batch" and the default value for SCMs is "Procedure."

ATTENTION

Batch ID is mandatory for batches. It is optional for ProcOps. Since Batch ID isoptional for ProcOps, be cautious about using Batch ID to filter alarms or events;some of the alarms or events might be missed.

l Activity Creation Option (ACTOPT): Determines how the activity can be created. It can beconfigured as follows:

o None: A child activity can be created for Child Master Recipes/Child RCMs. But, achild activity cannot be created for SCMs.

o Auto: An activity is automatically created when the RCM/SCM is commanded to"Start" and the activity retains the current formula/report values of the RCM/SCM.Note that this option is applicable only for RCMs/SCMs. Activities for Master Recipescannot be created automatically.

o User or App:Recipe/SCM is displayed in the Activity List and the activity can becreated manually by an operator or through an application.

o All: An Activity can be created "Automatically" or "User or App." This option is notapplicable for Master Recipes.

The default value of ACTOPT for newly created Master Recipes is "User or App" and the defaultvalue for RCMs and SCMs is "None."

ATTENTION

If you are migrating from pre-R410 to R410 release, the default value of ACTOPT forRCMs and SCMs is "None."

l Configuring activities for CEE

l Configuring activities for RCM/SCM

l Configuring activities for a Master Recipe

6.3 Configuring activities for CEE

6.3.1 To configure CEE for activities

- 112 -

Chapter 6 - Activities Configuration

Page 113: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 6 - Activities Configuration

1. Right-click the CEE of the activity-supported controller and select Module Properties.

The CEE configuration form appears.

2. Click the Batch tab.

3. In the Batch Events Memory box, select the batch events settings.

4. In the Number of Activities (NUMACT) box, enter a number for this parameter to configurenumber of activities that can be created in this CEE.

ATTENTION

l You cannot create an activity without specifying the number of activities in theCEE.

l The number of activities configured does not affect the number of Experionlicense points available to you.

5. Select the maximum initialization state period for the activity from the Max init state period forActivity (MAXACTPERIOD) list.

6. Click OK.

7. Load the CEE, and the configured number of Activities are loaded.

ATTENTION

Load Values While Active fails if the NUMACT parameter value on the Project view islesser than the NUMACT parameter value in the loaded CEE.

For more information about the "Load Values While Active" option, refer to theControl Building User's Guide.

The status of the configured parameters can be viewed from the Statistics tab of the CEEconfiguration form.

6.4 Configuring activities for RCM/SCM

6.4.1 To configure RCM/SCM for activities

1. Right-click RCM/SCM and click Module Properties.

The RCM/SCM block properties window opens.

2. Click the Activities tab.

3. In the Configuration box, select the Type of the Activity (ACTTYPE).

l If the activity is a batch activity, select Batch.

l If the activity is a procedural activity, select Procedure.

4. Select the Activity Creation Option (ACTOPT) from the list.

5. Click OK.

- 113 -

Page 114: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

6. Assign the RCM/SCM to the CEE and load the activity-supported controller.

ATTENTION

l Recipes/SCMs cannot be inactivated if there are Activities created from them.

l The ACTTYPE parameter can be modified using the "Load Values While Active"option when the RCM/SCM is in "Active" state. For more information about the"Load Values While Active" option, refer to the Control Building User's Guide.

6.5 Configuring activities for a Master Recipe

After you have configured a Master Recipe, it is recommended to configure the activity creationoptions for the Master Recipe.

6.5.1 Prerequisites

Master Recipe must exist.

6.5.2 To configure activities for a Master Recipe

1. Right-click the Master Recipe and click Module Properties.

The Master Recipe configuration form opens.

2. Click the Activities tab to configure the activities for a Master Recipe.

3. Configure the Type of Activity (ACTTYPE) as "Batch" or "Procedure" based on yourrequirement.

The Batch Summary Display lists all the activities created as "Batch" and the ProcedureSummary Display lists all the activities created as "Procedure." The Activity Summary Displaylists both type of activities. The Create UI display also lists activities based on the value of thisparameter.

4. Configure the Activity Creation option (ACTOPT) as "User or App" or "None" based on yourrequirement.

l If you configure the ACTOPT as "User or App," a Control Recipe can be created from theMaster Recipe.

An activity is associated to a Master Recipe as soon as a Control Recipe is created for it.The Master Recipe appears in the Create Batch UI list and an activity is created.

l If you configure the ACTOPT as "None," the Master Recipe cannot be created as a top levelactivity, and does not appear in the Create Batch UI as an option during activity creation. Ifthe Master Recipe is executed as a child, then the child activity is created.

5. Click OK.

- 114 -

Chapter 6 - Activities Configuration

Page 115: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

INTERCLUSTER PEER-TO-PEER COMMUNICATION

Intercluster peer-to-peer function enables communication between batch layers distributed intwo or more Experion clusters. This function allows a parent recipe in one cluster to control itschild recipes in another cluster. The clusters participating in intercluster peer-to-peercommunication may be in the same or different FTE communities.

The following figures illustrate how intercluster peer-to-peer communication can be configuredbetween recipe layers:

- 115 -

CHAPTER

7

Page 116: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Figure 7.1 Intercluster peer-to-peer examples

- 116 -

Chapter 7 - Intercluster peer-to-peer communication

Page 117: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 7 - Intercluster peer-to-peer communication

Intercluster peer-to-peer communication enables you to create multiple child recipes for a parentrecipe across clusters.

Restrictions applicable for a CEE peer-to-peer communication in a cluster are also applicable forintercluster peer-to-peer communication. For more information about the CEE peer-to-peercommunication, refer to the Control Builder Components Theory.

Intercluster peer-to-peer is supported between a C300 Controller and other controllers such asC300, C200E, and ACE.Similarly, intercluster peer-to-peer is supported between a C200E/ACEController and other controllers such as C300, C200E, and ACE. However, intercluster peer-to-peeris not supported between the controllers that are in simulation environment. The controllersparticipating in intercluster peer-to-peer can reside in different clusters in the same or differentFTE community.

To configure intercluster peer-to-peer, ensure that you have a user account belonging to theLocal Engineers group.

l Terms used in intercluster peer-to-peer communication

l Intercluster peer-to-peer communication example configuration

l Task sequence for implementing intercluster peer-to-peer communication

l Guidelines for configuring intercluster peer-to-peer communication

l Configuring Phase block type mastership

l About cluster block

l About proxy blocks

l Validation of proxy blocks

l Export and import support for a proxy block

l Bulk build support for a proxy tag

l About building recipes through intercluster peer-to-peer communication

7.1 Terms used in intercluster peer-to-peer communication

The following table defines Honeywell-specific terms that are associated with intercluster peer-to-peer communication.

- 117 -

Page 118: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Terms Description

Origin cluster In a multi-layered recipe, the origin cluster is the cluster that contains the top levelrecipe.

Local cluster A local cluster enables you to create proxy recipe and the related components forthe recipe running in the origin cluster.

Cluster block A tag block that represents a local cluster for establishing intercluster peer-to-peercommunication.

Cluster ID The unique identifier configured (either automatically or manually) for each clusterinvolved in intercluster peer-to-peer.

Interclusterpeer-to-peer

Communication between two controllers in separate Experion clusters. Implies thatthe configuration for each controller involved is in a separate ERDB.

Proxy node A node that is contained by a cluster block and acts as a proxy for configuring peerreferences to a controller in the origin cluster.

Proxy originnode

A tag that is contained by a cluster block and acts as a proxy for configuring peerreferences to a controller in the origin cluster.

Proxy origintag

A proxy origin tag refers to the tag in the origin cluster. The proxy tag refers to theproxy origin tag.

Proxy tag A tag that is contained by a proxy node and acts as a proxy for configuring peerreferences to a controller in another cluster.

Proxy FTEB An FTEB block that is contained by a cluster block and represents a non-redundantor a primary FTEB block in the origin cluster.

Proxy originFTEB

A proxy origin FTEB refers to the platform block in the origin cluster. The proxyFTEB refers to the proxy origin FTEB.

7.2 Intercluster peer-to-peer communication exampleconfiguration

The following example explains how to configure intercluster peer-to-peer communicationbetween the same FTE community.

Figure 7.2 Intercluster peer-to-peer communication in same FTE

In this example, SERVER5 is the local cluster, SERVER2 is origin cluster, and they are in same FTEcommunity. In the origin cluster SERVER2, top level recipes MASTERRECIP_1123, RCM_01, andSCM_01 reside in the C300 Controller C300_213. In the local cluster SERVER5, a cluster block

- 118 -

Chapter 7 - Intercluster peer-to-peer communication

Page 119: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 7 - Intercluster peer-to-peer communication

SERVER2 is configured with a proxy node C300_213 including the proxy tags MASTERRECIP_1123,RCM_01, and SCM_01. In the local cluster SERVER5, C300 Controller C300_1 is configured with theMaster Recipes MR1_PRNT and MR1_PRNT to execute the child recipes MASTERRECIP_1123,RCM_01, and SCM_01.

The following example explains how to configure intercluster peer-to-peer communicationbetween the clusters in different FTE communities.

Figure 7.3 Intercluster peer-to-peer communication in different FTE

The configuration to establish intercluster peer-to-peer communication between clusters in thesame or different FTE community is identical. However, router configuration must be performedseparately if the clusters are in different FTE communities.

ATTENTION

For more information about the router configuration, hardware requirement, and networktopology for intercluster peer-to-peer communication, refer to the Fault Tolerant Ethernet(FTE) Best Practices document.

In this example, SERVER5 is the local cluster, SERVER2 is origin cluster, and they are in differentFTE communities. In the origin cluster SERVER2, top level recipes MASTERRECIP_1123, RCM_01,and SCM_01 reside in the C300 Controller C300_213. In the local cluster SERVER5, a cluster blockSERVER2 is configured with a proxy node C300_213 including the proxy tags MASTERRECIP_1123,RCM_01, and SCM_01. In the local cluster SERVER5, C300 Controller C300_1 is configured with theMaster Recipes MR1_PRNT and MR1_PRNT to execute the child recipes MASTERRECIP_1123,RCM_01, and SCM_01.

For detailed steps to configure intercluster peer-to-peer communication, refer to Intercluster peer-to-peer communication configuration example.

7.3 Task sequence for implementing intercluster peer-to-peercommunication

The following table lists the general tasks to be performed and the reference topics forimplementing intercluster peer-to-peer communication.

- 119 -

Page 120: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Task Reference

Understand the intercluster peer-to-peer communicationterms.

Terms used in intercluster peer-to-peer communication

Choose clusters across which you need to establishintercluster peer-to-peer communication.

Assign cluster IDs.

Batch Preferences tab

Choose controllers that need to participate in interclusterpeer-to-peer communication.

Assign a communication range for each of the controllersthat participate in intercluster peer-to-peer communication.

Manage intercluster peer-to-peertab

Example for configuringintercluster peer-to-peercommunication from BatchPreferences

Configure Phase block type mastership to use the origincluster Phase block type across clusters participating inintercluster peer-to-peer communication.

NOTE

Phase block type mastership needs to beconfigured if the mastership is not assigned fromBatch Preferences.

Configuring Phase block typemastership

NOTE

Batch Preferences tab

The following table lists the tasks to be performed in the origin cluster and the reference topics forimplementing intercluster peer-to-peer communication.

Tasks to be performed onthe origin cluster Reference

Build the top level recipes. Based on your requirement, refer to Building a Master Recipe or"Creating an RCM instance" topic in the Sequential Control User's Guide.

Export the Phase blocktype of the top levelrecipe.

Import/Export of a Phase block type with parameter type Publicenumeration

Validate the top levelrecipe.

Validating a Master Recipe

The following table lists the tasks to be performed in the local cluster and the reference topics forimplementing intercluster peer-to-peer communication.

- 120 -

Chapter 7 - Intercluster peer-to-peer communication

Page 121: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 7 - Intercluster peer-to-peer communication

Tasks to be performed on the local cluster Reference

Configure instances of cluster, controller,Recipes as per the origin cluster.

1. Configure cluster block (for cluster)

2. Configure proxy node (for controllers)

3. Import the Phase block type of the Recipesresiding in the origin cluster

4. Configure proxy tags (for Recipes/SCMs)

1. Configuring a cluster block

2. Configuring a proxy node

3. Import/Export of a Phase block type withparameter type Public enumeration

4. Configuring a proxy tag

Build a Master Recipe and then add the proxytag to the Master Recipe chart.

Building a Master Recipe

Validate cluster block. Validating a Cluster block

Validate proxy node. Validating a proxy node

Validate proxy tag. Validating a proxy tag block

Validate proxy FTEB block. Validating a proxy FTEB block

Assign and load the Master Recipe to thecontroller.

7.4 Guidelines for configuring intercluster peer-to-peercommunication

You must adhere to the following guidelines while configuring intercluster peer-to-peercommunication.

l If the clusters participating in intercluster peer-to-peer are in a different FTE community, youneed to establish communication between the clusters through a router.

ATTENTION

For more information about the router configuration, hardware requirement, andnetwork topology for intercluster peer-to-peer communication, refer to the FaultTolerant Ethernet (FTE) Best Practices document.

l The IP addresses of the clusters participating in intercluster peer-to-peer communication mustbe configured in the server hosts file.

For more information about configuring host file, refer to the Server and Client ConfigurationGuide.

l The proxy node name and the proxy tag name must be unique in local and origin clusters.

l Server DSA must be correctly configured on each cluster, which is participating in interclusterpeer-to-peer communication, to ensure that the displays function accurately in the Station. Allservers in these clusters must be configured to subscribe to both alarm and data. For moreinformation about configuring DSA and subscribing to alarms and data, refer to the"Configuring Distributed System Architecture" section of the Server and Client ConfigurationGuide.

l The IP addresses of the CEEs participating in intercluster peer-to-peer must be unique acrossclusters.

7.5 Configuring Phase block type mastership

You must maintain a Phase block type mastership, which enables to use the same phase block

- 121 -

Page 122: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

type by recipes or proxy blocks across clusters.

Phase block type mastership determines the master cluster of a Phase block type and only amaster cluster can modify the Phase block type. You can import the Phase block type to anothercluster, which has a different cluster ID from the Phase block type master, the destination clusterbecomes the slave cluster. You cannot modify the imported Phase block type. For example,consider that the cluster (SERVER1) is auto-assigned with the mastership option and configuredas master cluster of a Phase block type (AGIT). In this scenario, when you export the Phase blocktype (AGIT) and import it to another cluster (SERVER2), the cluster (SERVER2) becomes the slavecluster. You cannot manipulate the Phase block type in the cluster (SERVER2).

7.5.1 Prerequisites

l Clusters are configured.

l Unique cluster ID is assigned to the clusters.

7.5.2 To configure Phase block mastership

1. In Control Builder, click Tools > Batch Preferences.

2. In the dialog box that appears, on the Batch Preferences tab, select Auto Assign Mastershipcheck box.

3. Click OK.

4. In the Control Builder library, double-click a Phase block and then click the Fixed tab.

The cluster ID appears in the Default Value column.

The cluster is defined as the master cluster since the cluster ID of the Phase block is identicalto the cluster ID of the cluster block. The master cluster can modify the Phase block.

5. Export the Phase block to a selected location and then import it to another cluster. Thedestination cluster becomes the slave cluster and the Phase block is added as read-only in themaster cluster.

The cluster that has a different cluster ID from the Phase block master is defined as the slavecluster. A slave cluster cannot modify the Phase block it has imported.

If you want to modify the Phase block type, modify it in the master cluster before exporting thePhase block type from the master cluster. You can import the modified Phase block type to theslave cluster using the overwrite option.

ATTENTION

You cannot modify the Phase block that is configured as mastership during runtime. If you try to do so, an error message appears.

l Changing the Phase block mastership in the current master cluster

7.5.3 Changing the Phase block mastership in the current mastercluster

You can change the Phase block mastership using one of the following methods.

l Changing the Phase block mastership from Phase block PDE

l Changing the Phase block mastership from the Batch Preferences tab

- 122 -

Chapter 7 - Intercluster peer-to-peer communication

Page 123: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 7 - Intercluster peer-to-peer communication

To change the Phase block mastership from Phase block PDE

1. In the Control Builder library, double-click the Phase block type.

The Phase block PDE appears with the Formula Parameters tab selected by default.

2. Click the Fixed tab and then replace the existing cluster ID with a new cluster ID in the DefaultValue column.

3. Close the Phase block PDE.

The cluster that has identical cluster ID becomes the Phase block master and the currentmaster cluster is configured as slave cluster.

4. Perform the following steps in the current master cluster.

a. Click Tools> Batch Preferences.

b. On the Batch Preferences tab, clear the Automatically Assign Mastership check box.

To change the Phase block mastership from the Batch Preferences tab

Perform the steps in the current slave cluster.

a. Click Tools> Batch Preferences.

b. On the Batch Preferences tab, select the Automatically Assign Mastership check box.

c. Click OK to save the changes.

d. In the Control Builder library , double-click the Phase block type.

The Phase block PDE appears with the Formula Parameters tab selected by default.

e. Click the Fixed tab and replace the existing cluster ID in the Default Value column with thecluster ID of the current slave cluster.

f. Close the Phase block PDE.

The current slave cluster is configured as the new Phase block master.

7.6 About cluster block

A tag block that represents a local cluster for establishing intercluster peer-to-peercommunication.

Origin cluster

In a multi-layered recipe, the origin cluster is the cluster that contains the top level recipe.

You can configure the proxy blocks in the origin cluster in the following order.

1. Origin cluster block

2. Proxy origin FTEB

3. Proxy origin node

4. Proxy origin tag

The proxy origin FTEB, proxy origin node, and proxy origin tag must exist in the Control BuilderProject view of the origin cluster. If these proxy blocks are not configured in the origin cluster,proxy blocks do not appear in the origin cluster.

l Guidelines for configuring the cluster block

l Configuring a cluster block

l Sharing a public enumeration set across clusters

l Selecting units across clusters

- 123 -

Page 124: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

7.6.1 Guidelines for configuring the cluster block

You must adhere to the following guidelines for configuring a new cluster block name or renamingthe existing cluster block.

l The clusters must be on the same Experion release.

l The cluster block name must be valid.o If the server is redundant, the cluster name would be the server name minus A or B.

o If the server is non-redundant, the cluster name would be the server name.

l The server name and the IP address of the cluster with which the communication is beingestablished must be available to the cluster which is initiating the communication.

l Cluster block name must be the host name of the origin ERDB.

l The cluster IDs and the cluster names must be unique across clusters.

l The communication number (Comm#) must be unique for all clusters.

7.6.2 Configuring a cluster block

You must configure a cluster block to represent the origin cluster with which the local clusterneeds to establish a communication. For example, a cluster block SERVER5 created in the serverSERVER4 represents the origin cluster.

To configure a cluster block

1. Click File > New > Cluster in the Control Builder.

The cluster configuration form appears. The Tag Name box contains a default cluster name.

2. Type a name for the cluster in the Tag Name box.

3. Type a cluster name in the Cluster Name box.

4. Click OK.

The cluster block appears in the Control Builder Project view if the entered details are correct.

The cluster block appears in the Control Builder Project view with an invalid block indicator ifany of the prerequisites are not met.

ATTENTION

l After the cluster block is added to the Project view, the following menus aredisabled for the cluster block.

o Renameo Copyo Loado Load With Contentso Load Server Pointso Delete Server Pointso Upload Server Config. Datao Resolve Substitute Connections

l It is recommended that before deleting a cluster block, you must first deleteproxy nodes, proxy tags, and proxy FTEBs contained within the cluster block.

- 124 -

Chapter 7 - Intercluster peer-to-peer communication

Page 125: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 7 - Intercluster peer-to-peer communication

7.6.3 Sharing a public enumeration set across clusters

A public enumeration set can be shared across clusters using the Export/Import functionality.Whenever there is a change in the Phase block type/public enumeration set in origin cluster,ensure that the Phase block type/public enumeration set changes are reflected in the localcluster. If the Phase block type/public enumeration set changes are not reflected in the localcluster, an error message appears during import.

When a public enumeration set is used in a Phase block type in the origin cluster, the Phase blocktype and the public enumeration set must be exported together from the origin cluster. Theexported Phase block type and the public enumeration set must be imported together to the localcluster. If the Phase block type and the public enumeration set are not imported together to thelocal cluster, an error message appears during import.

7.6.4 Selecting units across clusters

When a recipe is running across clusters, the units can be selected only through unit passingmechanism. When the parent recipe and the child recipe are running in different clusters, theparent recipe can only pass the unit to the child recipe. To pass the unit to the child recipe, youhave to configure the formula parameter of the Phase block type in the parent recipe.

For more information about the unit passing mechanism, refer to the Unit Configuration, Passing,and Acquisition.

7.7 About proxy blocks

A proxy block is a tag block that represents the origin block in the local cluster.

Prior to configuring a proxy block, ensure that the respective origin block must exist in the origincluster. For example, if you configure a proxy node, ensure that the controller is present in theorigin cluster.

To enable intercluster peer-to-peer, you must create the following proxy blocks.

l Proxy origin node: A proxy origin node refers to the platform block in the origin cluster. Theproxy node refers to the proxy origin node.

l Proxy origin tag: A proxy origin tag refers to the tag in the origin cluster. The proxy tag refers tothe proxy origin tag.

l Proxy origin FTEB: A proxy origin FTEB refers to the platform block in the origin cluster. Theproxy FTEB refers to the proxy origin FTEB.

l Proxy node: A node that is contained by a cluster block and acts as a proxy for configuring peerreferences to a controller in another cluster.

l Proxy tag: A tag that is contained by a proxy node and acts as a proxy for configuring peerreferences to a controller in another cluster.

l Proxy FTEB: An FTEB block that is contained by a cluster block and represents a non-redundantor a primary FTEB block in the origin cluster.

You must create the proxy blocks in the local cluster to configure intercluster peer-to-peercommunication between the local cluster and the origin cluster.

NOTE

If you make any changes to the proxy origin blocks, you must validate the proxy blocks toensure that the changes are reflected in the local cluster.

An example configuration of the proxy blocks across clusters is illustrated in the following figure.

- 125 -

Page 126: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Figure 7.4 Proxy blocks configuration in the Control Builder

If you encounter any errors while configuring the proxy blocks, refer to the

l Control Builder Error Code Reference for the respective error codes.

l Troubleshooting scenarios related to Batch/ProcOps implementation for the troubleshootingscenarios.

l Configuring a proxy FTEB block

l Configuring a proxy node

l Guidelines for configuring proxy tag

l Configuring a proxy tag

7.7.1 Configuring a proxy FTEB block

You must configure the proxy FTEB block if the recipes are built and executed under the C200EController across clusters.

An FTEB exists for configuration and handle-to-name resolution of an FTEB block that exists inorigin cluster. It acts as a stand-in (proxy) for establishing intercluster peer-to- peercommunication between the origin and the local clusters. The cluster block contains the proxyFTEB block. The cluster block contains the proxy FTEB block.

You must configure a proxy FTEB block to represent a non-redundant or primary FTEB block inorigin cluster.

NOTE

Only the primary FTEB can act as a proxy node.

Prerequisites

- 126 -

Chapter 7 - Intercluster peer-to-peer communication

Page 127: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 7 - Intercluster peer-to-peer communication

l Proxy cluster is configured.

l Proxy origin FTEB block is configured in the origin cluster.

To configure a proxy FTEB

1. In the Control Builder Project view, right-click a cluster block and then click Create Proxy FTEBblock.

The proxy FTEB configuration form appears.

2. Click the point picker to select the Tag Name for the proxy FTEB block.

The selected proxy origin FTEB name appears as the proxy FTEB name. In the proxy FTEBconfiguration form, observe that the Parent Name and the Cluster Name are automaticallyassigned, respectively.

3. Click OK.

The proxy FTEB block appears in the Control Builder Project view in the cluster block.

The proxy FTEB block appears in the Control Builder Project view with an invalid block indicatorif any of the prerequisites are not met.

ATTENTION

l The proxy FTEB block must be deleted/renamed/reassigned in the local clusterwhen the corresponding proxy origin FTEB is deleted/renamed/reassigned inthe origin cluster.

l To delete a proxy FTEB block, right-click the FTEB block and select Delete orpress DELETE, respectively.

7.7.2 Configuring a proxy node

You can configure a proxy node to represent a platform block in another cluster containing theproxy origin tag blocks. You can configure a maximum of 120 proxy nodes in one ERDB.

General QVCS rules apply to the proxy node when the proxy node is in QVCS.

Prerequisites

l Cluster block is configured.

l Proxy origin nodes are configured in another cluster where all the proxy origin tags reside.

To configure a proxy node

1. In the Control Builder Project view, right-click a cluster block and then click Create Proxy Node.

The proxy node configuration form appears. The Tag Name box contains a default proxy nodename.

2. Click the point picker .

The Point Selection dialog box appears to select the appropriate node from the nodes availablein the origin cluster.

3. (Optional) In the Tag Name box, type a valid proxy origin node.

- 127 -

Page 128: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

4. Click OK.

The selected node is added in the Tag Name box.

The following parameters in the proxy node configuration form are added with auto-populatedvalues.

l IP Address

l Proxy Origin Node type

l Parent Name

l Cluster Name

5. Click OK.

If the proxy origin node is not in the same FTE or if it is in a different FTE community, the proxynode appears in the Control Builder Project view with an invalid block indicator.

ATTENTION

After the proxy node is added in the Control Builder Project view, the followingmenus are disabled for the proxy node.

l Rename

l Copy

l Load

l Load With Contents

l Load Server Points

l Delete Server Points

l Upload Server Config. Data

l Resolve Substitute Connections

7.7.3 Guidelines for configuring proxy tag

You must adhere to the following guidelines before configuring the proxy tag.

l The proxy origin tag must be Recipe/SCM.

l A valid proxy node for the proxy origin node must exist in the local cluster.

l Proxy tag must be of the same type as the proxy origin tag.

l Proxy origin tag block has to be assigned to a proxy origin node.

l General QVCS rules apply to the proxy tag when the proxy tag is in QVCS.

l Phase block type used by proxy origin tag block must be imported prior to creating proxy tagblocks.

7.7.4 Configuring a proxy tag

You can configure the number of proxy tags to be equivalent to the number of process points thatis allowed in one ERDB.

Prerequisites

l Origin cluster block, proxy origin node, and proxy origin tag must exist.

l Data block of the proxy origin tag must exist in the local cluster.

l Proxy origin tags must be configured and assigned in proxy origin node.

- 128 -

Chapter 7 - Intercluster peer-to-peer communication

Page 129: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 7 - Intercluster peer-to-peer communication

To configure a proxy tag

1. In the Control Builder Project view, right-click the proxy node and then click Create Proxy RCM,Create Proxy SCM, or Create Proxy CBR.

The proxy tag configuration form appears with a default tag name.

2. Click the point picker .

The Point Selection dialog box appears to select the appropriate tag from tags available in theorigin proxy node.

3. (Optional) In the Tag Name box, type a valid proxy origin tag.

4. Click OK.

If the proxy origin tag is not in the same FTE or if it is in a different FTE community, the proxytag appears in the Control Builder Project view with an invalid block indicator.

ATTENTION

After the proxy tag is added in the Control Builder Project view, the following menusare disabled for the proxy tag.

l Rename

l Copy

l Load

l Load With Contents

l Load Server Points

l Delete Server Points

l Upload Server Config. Data

l Resolve Substitute Connections

7.8 Validation of proxy blocks

All proxy blocks must be validated in the local cluster when there is a modification in the proxyblocks configured in the origin cluster. The modification to the proxy blocks can be one of thefollowing:

l Deleting/reassigning/renaming of proxy blocks in the origin cluster.

l Deleting/reassigning/renaming of proxy blocks that are under QVCS control.

The proxy blocks can be validated in the following order.

l Cluster block

l Proxy FTEB block

l Proxy node

l Proxy tag

All proxy blocks can be validated at once. For a few validation scenarios, illegal configuration of theproxy origin blocks are automatically handled. For example, proxy tags configured in an invalidproxy node can be assigned to a valid proxy node using the auto assignment of proxy tags.However, if multiple proxy tags are selected for validation, auto assignment of proxy tags to proxynode functionality does not work.

During validation, if there is a mismatch in the configuration of the proxy blocks in the origin andlocal clusters, an error message appears. You must take action accordingly.

- 129 -

Page 130: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

l Validating a Cluster block

l Validating a proxy FTEB block

l Validating a proxy node

l Validating a proxy tag block

7.8.1 Validating a Cluster block

Prerequisites

Cluster block is configured.

To validate a Cluster block

1. In the Control Builder Project view, right-click the cluster block and then click Validate BlockReferences.

The Confirm Validation of Block References dialog box appears.

2. Click Continue.

The validation status and the respective warning/error messages are displayed in the ValidateBlock and References dialog box.

3. Click Close.

To view the error logs, click View Error Log.

7.8.2 Validating a proxy FTEB block

Prerequisites

l Origin cluster block, proxy origin FTEB, and proxy origin tag must exist.

l Data block of the proxy origin tag must exist in the local cluster.

l Child recipes must be created and assigned in the proxy origin node.

To validate a proxy FTEB block

1. In the Control Builder Project view, right-click the proxy FTEB block and then click ValidateBlock References.

The Confirm Validation of Block References dialog box appears.

2. Click Continue.

The validation status and the respective warning/error messages are displayed in the ValidateBlock and References dialog box.

3. Click Close.

To view the error logs, click View Error Log.

7.8.3 Validating a proxy node

Prerequisites

l Origin cluster block, proxy origin node, and proxy origin tag must exist.

l Data block of the proxy origin tag must exist in the local cluster.

l Child recipes must be created and assigned in the proxy origin node.

- 130 -

Chapter 7 - Intercluster peer-to-peer communication

Page 131: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 7 - Intercluster peer-to-peer communication

To validate a proxy node

1. In the Control Builder Project view, right-click the proxy node and then click Validate BlockReferences.

The Confirm Validation of Block References dialog box appears.

2. Click Continue.

The validation status and the respective warning/error messages are displayed in the ValidateBlock and References dialog box.

3. Click Close.

To view the error logs, click View Error Log.

7.8.4 Validating a proxy tag block

Prerequisites

l Origin cluster block, proxy origin node, and proxy origin tag must exist.

l Data block of the proxy origin tag must exist in the local cluster.

l Child recipes must be created and assigned in the proxy origin node.

To validate a proxy tag block

1. In the Control Builder Project view, right-click the proxy tag block and then click Validate BlockReferences.

The Confirm Validation of Block References dialog box appears.

2. Click Continue.

The validation status and the respective warning/error messages are displayed in the ValidateBlock and References dialog box.

3. Click Close.

To view the error logs, click View Error Log.

7.9 Export and import support for a proxy block

Export and import functionality is supported for all proxy blocks, including the cluster block.

ATTENTION

l If a child proxy block is exported without its associated parent proxy block, the childproxy block is imported under the Unassigned list in the Control Builder Project view.

For example, if a proxy tag block is imported and its parent block is missing theexported file, the imported proxy tag blocked is added to the Unassigned list in theControl Builder Project view.

l The Data block associated with the proxy origin tag must be exported and importedbefore configuring a proxy tag in the local cluster.

7.9.1 Prerequisites

- 131 -

Page 132: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

l Origin cluster block, proxy origin node, and proxy origin tag must exist in the local cluster.

l Imported Data block of the proxy origin tag must exist in the local cluster.

For more information about export and import functionality and export/import procedure, refer tothe Control Building User's Guide.

7.10 Bulk build support for a proxy tag

Bulk build operation is supported only for a proxy tag.

ATTENTION

Bulk build is not supported on other proxy blocks such as, Cluster block, proxy nodes, orproxy FTEB blocks.

7.10.1 Prerequisites

l Cluster block, proxy node, and proxy tag are configured.

l Proxy tag is assigned to a proxy node.

For more information about performing the Bulk Build related operations, refer to the ControlBuilding User's Guide.

7.11 About building recipes through intercluster peer-to-peercommunication

Both instance-based recipe and Class-based recipe can be configured and monitored throughintercluster peer-to-peer communication across clusters. Before you configure Recipes in the localcluster, you must ensure that the following:

1. Cluster block

2. Proxy node

3. Proxy tag (for example, RCM, SCM, and Master recipe.)

4. Phase block type associated with the Recipes must be exported from the origin cluster andimported to the local cluster.

5. Public enumeration (if there is any) associated with the Phase block type must be exportedfrom the origin cluster and imported together to the local cluster.

ATTENTION

Unit passing across clusters is not permitted.

l Intercluster peer-to-peer communication configuration example

7.11.1 Intercluster peer-to-peer communication configurationexample

This section explains about how to build a recipe in intercluster peer-to-peer communication.

- 132 -

Chapter 7 - Intercluster peer-to-peer communication

Page 133: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 7 - Intercluster peer-to-peer communication

For example, consider that there are two clusters (SERVER5 and SERVER2) participating inintercluster peer-to-peer communication. In this scenario, assume that the cluster SERVER2 is anorigin cluster and the cluster SERVER5 is the local cluster. The controllers C300_1 and C300_213are configured in the respective clusters.

Figure 7.5 Class-based recipe building in intercluster peer-to-peer communication

Prerequisites

l Two servers in same FTE community or different FTE communities.

l User account belonging to the Local Engineers group.

l Host files must be in synchronization.

l Cluster IDs must be assigned to the clusters in both origin and local clusters. For moreinformation about assigning the cluster IDs, refer to the Batch Preferences tab.

l Ensure that the communication range for each controller is defined in the Batch Preferencesmenu. For more information about defining the communication range, refer to the Manageintercluster peer-to-peer tab.

l Ensure that controllers are configured and loaded in both clusters.

To build a recipe in the origin cluster

1. Export the Phase block type associated with the recipe.

2. Build the Master Recipe.

For building the Master Recipe, refer to the Building a Master Recipe.

To build a recipe in the local cluster and establish intercluster peer-to-peercommunication

1. Click File > New > Cluster in the Control Builder.

The cluster configuration form appears. The Tag Name box contains a default cluster name.

2. Type a name for the cluster as "SERVER2" in the Tag Name box.

3. Type the cluster name as "SERVER2" in the Cluster Name box.

- 133 -

Page 134: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

4. Click OK.

5. In the Control Builder Project view, right-click a cluster block and then click Create Proxy Node.

The proxy node configuration form appears. The Tag Name box contains a default proxy nodename.

6. Click the point picker .

The Point Selection dialog box appears to select the proxy node name as "C300_213" from thenodes available in the origin proxy cluster.

7. (Optional) In the Tag Name box, type the proxy node name as "C300_213."

8. Click OK.

9. Import the Phase block type exported from the origin cluster.

10. In the Control Builder Project view, right-click the proxy node and then click Create Proxy CBR.

The proxy tag configuration form appears with a default tag name.

11. Click the point picker .

The Point Selection dialog box appears to select the proxy tag name as "MASTERRECIP_1123"from the tags available in the origin proxy node.

12. (Optional) In the Tag Name box, type the proxy tag name as "MASTERRECIP_1123."

13. Click File> New > Master Recipe > Procedure.

The Master Recipe configuration form appears.

14. On the Parameters tab, click browse icon to select the Phase block type imported from theorigin cluster (SERVER2).

15. On the Main tab, type the Master Recipe name as "MASTERRECIP_1123" in the Name box.

16. Click OK.

The Master Recipe configuration form is closed.

17. From the Control Builder Project view, drag the proxy tag ("MASTERRECIP_1123") to theMaster Recipe ("MR1_PRNT") chart.

18. Close the Master Recipe ("MR1_PRNT") chart.

19. Assign and load the Master Recipe ("MR1_PRNT") to the controller C300_1.

20. Create activity to run the Recipes.

For more information about the activity creation, refer to the "Creating a batch or procedure"topic in the Operator's Guide.

- 134 -

Chapter 7 - Intercluster peer-to-peer communication

Page 135: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

MAINTAIN EQUIPMENT MODEL

This chapter explains about the changes made to the equipment model while the batches areexecuting against the unit instances instantiated from the unit class.

l Restrictions for modifying enumeration sets

l Change parent support for a Phase block/Data block

l Maintaining Phase types

l Support for change parent by function from Master Recipe chart

l Maintaining a Map block type

l Maintaining a Unit class

l Import/export of Class-based recipes

l Batch Search Scenarios

8.1 Restrictions for modifying enumeration sets

The following modifications cannot be made if an enumeration set is referenced/used in anyblock type/UDT or any other strategies.

l The existing enumeration set (private and public) cannot be deleted.

l The enumeration set ordinal values cannot be modified.

However, a new enumeration set member (enumeration string and enumeration ordinal) can beadded to an existing enumeration set, even if the enumeration set is used in any block type/UDTor any other strategies. Enumeration string can be modified even if the enumeration set is usedin any block type/UDT or any other strategies.

A public enumeration holder cannot be deleted from the library view if it contains configuredenumeration sets.

8.2 Change parent support for a Phase block/Data block

Change parent functionality can be performed when a different set of parameter values need tobe configured to the Phase block/Data block. Therefore, the Phase block/Data block inherits newparameter values from the new parent.

Change parent functionality enables you to change the parent of a Phase block/Data block.During the change parent operation, the source parameter value is copied to the targetparameter value.

While changing the parent support for an enumeration set, you must consider the following:

- 135 -

CHAPTER

8

Page 136: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

l Source and target blocks have identical parameter names but different enumeration setnames. Default enumeration value exists in the target block.

l Source and target blocks have identical parameter names but different enumeration setnames. Default enumeration value does not exist in the target block.

l Source and target blocks have identical parameter names. Source data type is enumerationand target data type is integer.

l Source and target blocks have identical parameter names. Source data type is integer andtarget data type is enumeration.

The following table describes the behavior for the enumeration data type.

SourceData type

TargetData type Expected behavior

INT ENUM The target parameter is set to the value of the enumeration set whoseordinal value matches with the integer value of the source parameter.

FLOAT ENUM The target parameter is set to the value of the enumeration set whoseordinal value matches with the float value of the source parameter.

ENUM ENUM The target parameter is set to the value of the enumeration set.

STRING ENUM The target parameter is set to the value of the enumeration set whoseenumeration value matches with the string value of the source.

BOOLEAN ENUM The target parameter is set to the ordinal value of the enumeration value.

ENUM INT The target parameter is set to the ordinal value of the enumeration value.

ENUM FLOAT The target parameter is set to the ordinal value of the enumeration value.

ENUM STRING The target parameter is set to the string value of the enumeration value.

ENUM BOOLEAN The target parameter is set to true if the source parameter has ordinalvalue greater than zero.

The target parameter is set to false if the source parameter has the ordinalvalue zero.

For information about using change parent functionality on different blocks, refer to the ControlBuilding User's Guide and Sequential Control User's Guide.

8.3 Maintaining Phase types

The parameters that are already defined in the Phase block type can be deleted or modified onlywhen the Recipes are not loaded. However, the formula and report parameter referencesassociated with the added function is NULL and must be manually entered in the Phase blocktype.

8.3.1 Prerequisites

l A Phase block type to be configured for Recipes exists in the library.

l Ensure that the Master Recipe configured with the Phase block type is not loaded.

8.3.2 To maintain a Phase block type

1. In the Control Builder or Recipe Builder library, double-click the Phase block type.

The Phase block Parameter Definition Editor (PDE) window opens.

2. In the Formula Parameters tab, modify/delete the existing parameter values.

New formula parameters can also be added to the Phase block type. However, the values ofthe newly added parameters in the Recipes must be manually modified.

- 136 -

Chapter 8 - Maintain equipment model

Page 137: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 8 - Maintain equipment model

3. In the Report Parameters tab, modify/delete the existing parameter values.

New report parameters can also be added to the Phase block type. However, the values of thenewly added parameters in the Recipes must be manually modified.

4. In the Enumerations tab, modify/delete the existing enumeration values.

New enumerations can also be added to the Phase block type.

5. Click Save on the tool bar.

The Phase block type configuration is saved.

8.3.3 Next steps

For information about configuring the Phase block type, refer to the Sequential Control User's Guide.

8.4 Support for change parent by function from Master Recipechart

A function used by a Master Recipe can be changed to a new function using "Change parent byfunction" feature.

"Change parent by function" feature is supported from the Master Recipe chart. Using this feature,a parent of a Phase block referring to a Map block function (referred as the source function) canbe changed to another function (referred as the target function) in one of the Map blockscontained by a Unit class/UCM.

In the Master Recipe chart, Change parent by function operation is available only for Phase blocks.Change parent operation displays an error if a Phase block is not configured to use a function.

The Resource Name Reference (X_NAMEREF) parameter of the Phase block is auto-configured tothe newly selected function. However, unit configuration remains unchanged. Formula and reportparameters need to be manually configured.

8.4.1 Prerequisites

l Map block type is configured with functions.

l Map block is contained by a Unit class/UCM.

l Master Recipe exists and uses a Unit class/UCM.

l Master recipe must not be loaded.

8.4.2 To change parent by function from Master Recipe chart

1. From the Control Builder Project view, double-click a Master Recipe.

The Master Recipe chart opens.

2. Right-click a Phase block containing a function reference in the chart and select ChangeParent by Function.

The Change Parent By Function wizard appears.

The Selected Function list contains the current Map block function name that is configured forthe selected block.

3. From the Available Functions list, select the one or more instances and then click Select > tomove all the listed instances to the Selected Functions list.

You can also click Select All >> to move all the listed instances to the Selected Functions list.

- 137 -

Page 138: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

4. From the Select New Parent list, select a new function as a target function.

The Select New Parent contains the functions available for change parent operation withinthe Unit class/UCM.

The source function name and target function name must be different. If you select identicalname as source function and target function, an error message appears.

5. Click Next to navigate to the Validation page.

6. Click Validate to initiate the validation of the change parent operation.

The validation of one selected function occurs at a time. Any error during validation isdisplayed in the Change Parent Results box. Only functions that completes validation withouterrors and no warning are automatically selected and are allowed for change parentoperation.

7. Click Next to navigate to the Change Parent page when the validation succeeds.

8. Click Change Parent to initiate the change parent operation of the selected function.

After you perform change parent operation by function, you can observe the followingconfiguration of a Phase block.

l The Phase block X_NAMEREF parameter is set to UNIT[X].MAP.'TO'FCN.

l The Unit passing parameter configuration remains same.

l The new parameters has default configuration.

9. Click DONE when the change parent operation is completed.

8.5 Maintaining a Map block type

A Map block type associated with function types, block references, and parameters can be modifiedor deleted. You can maintain a Map block type by adding, modifying, or deleting a parameterreference or a basic block reference or a function reference to the Map block type.

ATTENTION

You can modify an existing Map block function, can delete a function, and can add a newfunction reference through the Functions tab of the Map block PDE.

For adding or modifying a reference, refer to

l Configuring functions.

l Configuring a block reference.

l Configuring a parameter reference.

8.5.1 Prerequisites

l Map block type exists.

l Map block type is defined with function references, block references, and/or parameterreferences.

- 138 -

Chapter 8 - Maintain equipment model

Page 139: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 8 - Maintain equipment model

8.5.2 To modify a Map block type

1. In the Control Builder library, double-click a Map block type.

The Map block type's PDE appears.

2. Select a row that contains a function.

3. Modify a Map block type function using one of the following methods.

a. Double-click the Function Name or Function Description column and change the nameor description for an existing function.

b. In the Phase Type column, click the arrow .

A list of existing Phase types appears from the selected library. The existing Phase typecan be changed by selecting a different Phase type from the list.

Note: If you want to modify a block type by changing an existing block with a new blockname, the new block name must exist in the Control Builder library.

4. Close the PDE.

A confirmation message appears.

5. Click Yes.

ATTENTION

If you try to modify a function name or a phase type of a Map block that is already inuse in an Unit class/UCM, an error message appears. However, you can modify thefunction description even when the Map Block type is used in any of the Unitclass/UCM.

8.5.3 To delete a Map block function

1. In a Map block PDE, select a row that contains the Map block function you want to delete.

2. Right-click a function and click Delete from the shortcut menu or press DELETE from thekeyboard.

The selected Map block function is deleted from the PDE.

3. Close the PDE.

A confirmation message appears.

4. Click YES.

ATTENTION

If you try to modify a Map block function that is in use, an error message appears.

You can select Save As or Save As Renew to save the changes as another copy of Map block.

l Guidelines for modifying a reference

8.5.4 Guidelines for modifying a reference

Guidelines for modifying a parameter reference or a basic block reference or a function referenceis similar to creating a parameter reference or a basic block reference or a function reference. For

- 139 -

Page 140: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

more information about the guidelines, refer to

l Common guidelines for creating functions/block references/parameter references

l Guidelines for creating block references

l Guidelines for creating functions

l Guidelines for creating parameter references

You must adhere to the following guidelines in addition to the guidelines described in the topicGuidelines for creating parameter references while modifying the parameter reference.

l If you want to modify or delete a parameter reference name, ensure that the Map block is notcontained by a Unit class/UCM. Otherwise, an error message appears while saving themodifications to the Map block type. However, you can select Save As or Save As Renew to savethe changes as another copy of a Map block type.

l You can also copy one parameter reference from one row to any other empty row and canchange the order.

l The following changes can be made while modifying an existing parameter reference type bychanging the parameter type.

o If the reference type is configured as BOOLEAN, you can configure the parameter asUINT8.

o If the reference type is configured as ENUM, you can configure the parameter asINT32 and vice versa.

o If the reference type is configured as FLOAT64, you can configure the parameter asone of the following:o FLOAT64

o INT16

o UINT16

o INT32

o INT8

o UINT8

o UNIT32

o INT64

o UNIT64

o If the reference type is configured as INT32, you can configure the parameter as oneof the following:o INT16

o UINT16

o INT32

o INT8

o UINT8

o UNIT32

o If the reference type is configured as BOOLEAN, you can configure the parameter asUINT8 and BOOLEAN.

You must adhere to the following guidelines in addition to the guidelines described in the topicGuidelines for creating block references while modifying the block reference.

- 140 -

Chapter 8 - Maintain equipment model

Page 141: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 8 - Maintain equipment model

l If you want to modify a block reference name, ensure that the Map block is not contained by aUnit class/UCM. Otherwise, an error message appears while saving the modifications to theMap block type. However, you can select Save As or Save As Renew to save the changes asanother copy of a Map block type.

l If you want to modify a block reference name, ensure that the Map block is not loaded.Otherwise, an error message appears while saving the modifications to the Map block type.

8.6 Maintaining a Unit class

You can copy, delete, and import a Unit class. You can also perform a change parent operation ona Unit class. When you modify a Unit class, the modification propagates to the derivation childrenof a Unit class. Modification must adhere to the existing UDT rules.

8.6.1 Prerequisites

l Unit class/UCM must exist.

l Unit instances are instantiated from a Unit class.

8.6.2 To copy a Unit class

1. In the Control Builder or Recipe Builder library, right-click a Unit class/UCM, and select Copy.

The Name New Function Block(s) dialog box appears. The Destination column contains adefault name for the copied UDT or Unit class.

As illustrated, a copy of Unit class 04Y_MIXER_C is created, and by default a new block 04Y_MIXER_C_1 appears in the Destination block.

You can change the default name of the new block as appropriate or can retain it.

2. Click Finish.

A copy of the existing Unit class or UDT is created with a new designated name. In the ControlBuilder library it appears in the same Library Containment view as the source Unit class. Thecopied UDT/Unit class contains all the components of its source.

- 141 -

Page 142: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

As illustrated, 04Y_MIXER_C is created as a copied Unit class of 04Y_MIXER_C_1.

8.6.3 To delete a Unit class or a Unit instance

1. In the Control Builder or Recipe Builder library, right-click a Unit class or a Unit instance andselect Delete.

A confirmation window appears.

2. Click Delete Selected Object(s).

The selected Unit class or Unit instance deletes from the library.

ATTENTION

A Unit class or an UCM cannot be deleted if at least one loaded Master Recipe isconfigured with that Unit class or with a derivation child of the Unit class. If you tryto delete the Unit class that is configured with a loaded Master Recipe, an erroroccurs.

l Support for changing parent of a contained basic block of a Unit class/UCM

l Deleting a contained block of a Unit class

l Support for change parent by function from Unit class/UCM

l Support for change parent from a Unit class/UCM

- 142 -

Chapter 8 - Maintain equipment model

Page 143: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 8 - Maintain equipment model

8.6.4 Support for changing parent of a contained basic block of aUnit class/UCM

In a Unit class/UCM, when a contained basic block is selected for a block type change, the parentof the contained block can be modified. If there are any errors in selecting the parent, the errorscan only be detected during the validation phase of the change parent operation and theoperation is unsuccessful.

Change parent on a contained basic block of a Unit class/UCM can be performed only when

l no Master Recipes can be affected by the modification made in the Unit class/UCM.

l or, Master Recipes that can be affected by the modification made in the Unit class/UCM are notloaded.

NOTE

Change parent cannot be performed on a contained block of a Unit class or UCM when atleast one loaded Master Recipe is affected by Unit Class or UCM.

For detailed steps on changing parent, refer to Support for change parent from a Unit class/UCM

8.6.5 Deleting a contained block of a Unit class

Prerequisites

A contained block saved to the ERDB cannot be deleted from a Unit class or a UCM in the followingscenarios.

l A Master Recipe that is configured with a Unit class, which has references to the modified Unitclass or UCM.

l A Master Recipe that is configured with a Unit class, which has references to a derivation childof the modified Unit class.

If any error occurs during the deletion of Unit class, you can perform a browser search to find allthe master recipes, which have reference to the Unit class as the modification can have an impacton the referred master recipes. For more information about performing a search, refer toSearching for batch scenarios

To delete a contained block of a Unit class

1. In the Control Builder or Recipe Builder library, right-click a block added to a Unit class chart.

2. Click Delete.

The block is removed from the Unit class chart.

3. If you want to save the delete, click Save or close the Unit class chart and click Yes in theconfirmation dialog box.

The contained block is deleted from the Unit class.

8.6.6 Support for change parent by function from Unit class/UCM

"Change Parent by Function" from Unit class/UCM allows change parent of a function defined inthe Map block type (referred as the source function) to another function (referred as the targetfunction) in one of the Map blocks contained by a Unit class/UCM.

- 143 -

Page 144: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

When you add a new function to a Map block contained by a Unit class and the Unit class is usedby a Master Recipe, the new function becomes a replacement for an existing function. The newfunction uses a different Phase type from the existing function.

For example, consider that you are performing "Change Parent by Function" for AGITATE functionwith XFER_IN function configured in a Map block type (04Y_FERMENTOR_MAP) of a Unit class (04_FERMENTOR_C). In this scenario, AGITATE function is called as source function and XFER_IN iscalled as target function. The parent of AGITATE function is changed to the parent of XFER_INfunction.

When this operation is invoked on a Unit class, the following actions are taken.

1. All Phase blocks in the library and project view referring to source function are identified.

2. Change parent is performed using target function.

When this operation is invoked on a Unit instance, the following actions are taken.

1. All Master recipes that use the Unit instance and Phase blocks referring to the sourcefunction.

2. Change parent is performed using target function.

After the change parent operation, Phase blocks are automatically configured to a newly selectedfunction. The Resource Name Reference (X_NAMEREF) parameter of the Phase block is auto-configured to the newly selected function. However, unit configuration remains unchanged.Formula and report parameters need to be manually configured.

Prerequisites

l Map block type exists.

l Unit class/UCM exists and contains a Map block.

l Master recipe uses the Unit class/UCM.

- 144 -

Chapter 8 - Maintain equipment model

Page 145: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 8 - Maintain equipment model

To change parent by function from Unit class/UCM

1. In the Control Builder library, right-click a Unit class/UCM and select Change Parent byFunction.

The Change Parent By Function wizard appears.

2. From the Select Function list, click the function you want to use as a source function.

The Select Function list contains all the functions available in the Unit class/UCM. A Unitclass/UCM can have one or more Map blocks with functions configured in it.

All the instances of the selected function are listed in the Available Functions column.

3. From the Available Functions list, select the one or more instances and then click Select > tomove all the listed instances to the Selected Functions list.

You can also click Select All >> to move all the listed instances to the Selected Functions list.

- 145 -

Page 146: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

4. From the Select New Parent list, select a new function as a target function.

The Select New Parent contains the functions available for change parent operation withinthe Unit class/UCM.

The source function name and target function name must be different. If you select identicalname as source function and target function, an error message appears.

5. Click Next to navigate to the Validation page.

6. Click Validate to initiate the validation of the change parent operation.

The validation of one selected function occurs at a time. Any error during validation isdisplayed in the Change Parent Results box. Only functions that completes validation withouterrors and no warning are automatically selected and are allowed for change parentoperation.

- 146 -

Chapter 8 - Maintain equipment model

Page 147: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 8 - Maintain equipment model

7. In the Select column, select or clear the check boxes to select the functions to change parent.You cannot select a function that failed validation.

8. Click Next to navigate to the Change Parent page when the validation succeeds.

9. Click Change Parent to initiate the change parent operation of the selected function.

After you perform change parent operation by function, you can observe the followingconfiguration of a Phase block.

l The Phase block X_NAMEREF parameter is set to UNIT[X].MAP.'TO'FCN.

l The Unit passing parameter configuration remains same.

l The new parameters has default configuration.

10. Click DONE when the change parent operation is completed.

8.6.7 Support for change parent from a Unit class/UCM

Change parent feature is supported from the Unit class/UCM library view. Using this feature, aparent of a Unit class/UCM can be changed to another parent of a Unit class/UCM present in thelibrary view.

Prerequisites

l Unit class/UCM and its instances are not used in Master Recipes.

l Map block is configured in the Unit class/UCM.

l Map block is not used in Master Recipes.

- 147 -

Page 148: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

To change parent from Unit class/UCM

1. In the Control Builder library, right-click a Unit class/UCM and select Change Parent.

The Change Parent wizard appears.

2. (Optional) Click the Child of Selected item to change the parent of the unit instances.

3. From the Available Functions list, select the one or more instances and then click Select > tomove all the listed instances to the Selected Functions list.

You can also click Select All >> to move all the listed instances to the Selected Functions list.

4. From the Select New Parent list, select a new function as a target function.

The Select New Parent contains the functions available for change parent operation withinthe Unit class/UCM.

- 148 -

Chapter 8 - Maintain equipment model

Page 149: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 8 - Maintain equipment model

The source function name and target function name must be different. If you select identicalname as source function and target function, an error message appears.

5. Click Next to navigate to the Validation page.

6. Click Validate to initiate the validation of the change parent operation.

The validation of one selected function occurs at a time. Any error during validation isdisplayed in the Change Parent Results box. Only functions that completes validation withouterrors and no warning are automatically selected and are allowed for change parentoperation.

- 149 -

Page 150: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

7. Click Next to navigate to the Change Parent page when the validation succeeds.

8. Click DONE when the change parent operation is completed.

8.7 Import/export of Class-based recipes

Import and export functionality available in Control Builder is supported for all the components ofClass-based recipes. These include block types, templates, and strategies. Block types includePublic enumeration holders, Phase block types, and Map block types. Templates include Unitclasses or UDTs created for Phase block types or Recipes/SCMs. Strategies include instance of arecipe, SCM, Unit instance, or a Master Recipe. If configured, Class-based recipe strategies alsoinclude intercluster peer-to-peer blocks – cluster, node, and proxy tag (proxy SCM, proxy RCM, andproxy Master Recipe).

For more information about the guidelines for Import/Export, refer to Control Building User's Guide.

l Component dependencies in Import/Export

l Export and Import support for enumeration sets

l Import/Export of Public enumeration holder blocks

l Import/Export of a Phase block type with parameter type Public enumeration

l Import/Export of Map block types

l Import/Export of Unit classes

l Import/Export of proxy strategies

8.7.1 Component dependencies in Import/Export

Class-based recipes system components are dependent on one or more of the other componentsto achieve the necessary functionality. For example, a Master Recipe using a Unit class or a MasterRecipe using a Phase block as it’s Data block. Such scenarios lead to dependency of components.If a Master recipe is using a Unit class, the Master Recipe has a dependency on that Unit class.Similarly, if it is using multiple Unit classes, it would have a dependency on all those Unit classes.

- 150 -

Chapter 8 - Maintain equipment model

Page 151: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 8 - Maintain equipment model

You should know the component dependencies before exporting and importing. To successfullyimport a component, it is important to ensure that its dependencies can be resolved during import.This can be achieved either by importing the dependent components also or by ensuring thatdependent components are already present in the Control Builder before importing thecomponent.

The following illustration depicts a Master Recipe PROD_PROC that is using three Unit classes -PRETREAT, PROCESS, and DISTRIBUTION. Apart from that, it is also using LIB_PHASE:PHASE_1as its Data Block. Hence, the Master Recipe PROD_PROC is dependent on the Unit classes namely- PRETREAT, PROCESS, DISTRIBUTION, and Phase block type LIB_PHASE:PHASE_1.

Figure 8.1 An example Master Recipe that is using three Unit classes

ATTENTION

If you export the Master Recipe, Unit instances, and Control Modules, all the dependentlibrary blocks such as Unit class, Map block types, Phase block type, and Custom blocks areexported. However, if you export only the Unit class, the Unit class and the Map block typesare exported. Therefore, you must manually export the Phase block types and Customblocks.

Component dependencies can also be multilevel caused by indirect references of the dependentcomponents. In the following example, Master Recipe ‘DIST_OP1’ is dependent on the following:

l On Unit class named ‘Distribution’ because it is using it.

l On Map block type ‘LIB_MAP:SET1’ because Unit class ‘DISTRIBUTION’ is having an instanceof Map block ‘LIB_MAP:SET1.’

l On Phase block type ‘LIB_PHASE: PHASE_1’ because Map block ‘LIB_MAP:SET1’ has afunction named FUNCTION1 that has Phase type as ‘LIB_PHASE:PHASE_1’.

l On Public enumeration holder block ‘LIB_PE:PUBLIC1’ because Phase block type ‘LIB_PHASE:FUNCTION1’ has a parameter named F3 and F5 of enumeration type that are usingenumeration sets name #EN1 and #EN2. Enumeration sets #EN1 and #EN2 are defined inPublic enumeration holder block ‘LIB_PE:PUBLIC1’.

You can also use Experion Search utility to find the dependencies of a component. For moreinformation about search support for batch objects, refer to the topic Searching for batchscenarios.

- 151 -

Page 152: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

ATTENTION

Public enumeration sets are not exported automatically. They need to be explicitly exportedwhile exporting a Phase block type.

The following figure illustrates the export and import of the Master Recipe ‘DIST_OP1’.

Figure 8.2 An example for export and import of a Master Recipe

Export of Master Recipe with dependencies

As described previously, the Master Recipe ‘DIST_OP1’ has the following dependencies.

l On Unit class ‘Distribution’

l On Map block type ‘LIB_MAP:SET1’

l On Phase block type ‘LIB_PHASE:PHASE1’

l On Public enumeration holder block ‘LIB_PE:PUBLIC1’

You must export Master Recipe ‘DIST_OP1’ and all its dependencies to successfully import intoanother server or import in the same server sometime later. The following are the steps to exportMaster Recipe ‘DIST_OP1’ along with its dependencies.

1. Choose File > Export or right-click the object and click Export.

The Export dialog box appears.

2. Click Browse and select the directory where you want to save the exported objects.

Note: The directory C:\ProgramData\Honeywell\Experion PKS\Ixport is selectedby default.

3. Select ‘DIST_OP1’, ‘Distribution’, ‘LIB_MAP:SET1’, ‘LIB_PHASE:PHASE1’, ‘LIB_PE:PUBLIC1’and click Export.

The components selected for export is displayed in the Selected Objects For Export list.

- 152 -

Chapter 8 - Maintain equipment model

Page 153: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 8 - Maintain equipment model

The Exporting Data dialog box appears. The Status column in the Exporting Data dialog boxdisplays the status of each point. After the Export is complete, the Exporting Data dialog boxcloses automatically if there are no errors.

NOTE

Export Dependencies option does not work at all the level of the Class-based recipecomponents. For example, the public enumeration holder block LIB_PE:PUBLIC1 is notmanually exported since implicit export of the public enumeration holder block is notsupported. However, the references (can be function, block, and/or parameter) and theindirect references are exported when you select Export Dependencies check box.

Import Master Recipe with dependencies

Master Recipe ‘DIST_OP1’ has the following dependencies.

l On Unit class ‘Distribution’

l On Map block type ‘LIB_MAP:SET1’

l On Phase block type ‘LIB_PHASE:PHASE1’

l On Public enumeration holder block ‘LIB_PE:PUBLIC1’

To successfully import, you must select the Master Recipe ‘DIST_OP1’ and all its dependencies forimport. Perform the following steps to import Master Recipe ‘DIST_OP1’ along with itsdependencies.

1. Choose File > Import.

The Import dialog box appears.

2. Click Browse and select the directory from where you want to import the objects.

3. Select ‘DIST_OP1’, ‘Distribution’, ‘LIB_MAP:SET1’, ‘LIB_PHASE:PHASE1’, ‘LIB_PE:PUBLIC1’and click Import.

- 153 -

Page 154: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

The components selected for import are displayed in the Selected Objects For Import list.

ATTENTION

When the Master Recipe is imported without its dependencies, it results in an errorand the import operation stops. If the Master Recipe ‘DIST_OP1’ is not importedalong with its dependencies and also if those dependencies do not exist in thelibrary, a similar error is reported. To resolve this import error, you must re-importthe Master Recipe with all the dependencies or before importing, ensure that alldependencies are available in the library.

The Importing Data dialog box appears. The Status column displays the status of each point.After the Import is complete, the Importing Data dialog box closes automatically if there are noerrors. If any errors are encountered during Import, the Importing Data dialog box persistsuntil you click Close to quit the Importing Data dialog box.

8.7.2 Export and Import support for enumeration sets

Export and import functionality is supported for both private and public enumeration sets.However, note that private enumeration sets are automatically exported and imported with thePhase block types in which they are defined. Hence, there is no need to manually export or importprivate enumeration sets.

Public enumeration holder blocks must be specified to be exported and imported with any Phaseblock type that references to the public enumeration holder block.

- 154 -

Chapter 8 - Maintain equipment model

Page 155: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 8 - Maintain equipment model

ATTENTION

As a best practice, export all public enumeration holder blocks while exporting a Phase blocktype. To identify the Phase block types having references to public enumeration setsconfigured in public enumeration holder block, use "Parameter Search" functionality.

For more information about public enumeration search, refer to the Searching for publicenumerations.

You must consider the following while importing public enumeration holder block with theOverwrite Existing Objects option.

l The new public enumeration holder block containing identical enumeration set members andany additional enumeration set members can be imported.

l The new public enumeration holder block containing different enumeration set memberscannot be imported.

ATTENTION

It is recommended to import the public enumeration holder blocks and their associatedPhase block types simultaneously. Importing of a Phase block type fails if the publicenumeration holder blocks are not being imported or if the public enumeration sets do notexist in the ERDB. To search for the public enumeration sets configured in the Phase blocktypes, refer to the topic Searching for public enumerations.

If you select the Overwrite Existing Objects option and import a public enumeration holder blockhaving the same name as an existing public enumeration holder block,

l The new public enumeration holder block may contain new ordinal values for the enumerationvalue.

l The new public enumeration holder block may contain additional enumeration values.

For more information about export and import functionality, refer to the Control Building User'sGuide.

8.7.3 Import/Export of Public enumeration holder blocks

Public enumeration holder blocks can be exported or imported using the Import/Exportfunctionality available in Control Builder. A public enumeration holder block can be exported orimported independently as it does not have a dependency on other components. However, thepublic enumeration sets and the associated Phase block types must be imported together.

- 155 -

Page 156: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Export of Public enumeration holder block

1. Choose File > Export or right-click the object and click Export.

The Export dialog box appears.

2. Click Browse and select the directory where you want to save the exported objects.

NOTE

The directory C:\ProgramData\Honeywell\Experion PKS\Ixport isselected by default.

3. Select the Public enumeration holder block to be exported and click Export.

The components selected for export is displayed in the Selected Objects For Export list.

Public enumeration holder block is exported under new directory named as ‘ENUM_LIBRARY.ENUM_HOLDER’. To import this Public enumeration holder block to another server,then the folder ‘ENUM_LIBRARY.ENUM_HOLDER’ needs to be copied to that server. Aftercopying the folder to the another server, you can use Control Builder Import function toimport the block.

Import Public enumeration holder block

1. Choose File > Import.

The Import dialog box appears.

2. Click Browse and select the directory from where you want to import the objects.

3. Select Public enumeration holder block, for example ‘ENUM_LIB:ENUM_HOLDER_1’, and clickImport.

On successful import, Public enumeration holder block is created in the library.

- 156 -

Chapter 8 - Maintain equipment model

Page 157: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 8 - Maintain equipment model

Import Public enumeration holder block when it already exists in the library

1. Choose File > Import.

The Import dialog box appears.

2. Click Browse and select the directory from where you want to import the objects.

3. Select Public enumeration holder block, for example ‘ENUM_LIB:ENUM_HOLDER_1’.

4. Select Overwrite Existing Objects check box and click Import.

On successful import, Public enumeration holder block overwrites the existing Publicenumeration holder block available in the library.

ATTENTION

Import of public enumeration holder blocks can cause errors if it already existsbecause of the following reasons.

l Import with overwrite results in deletion of enumeration set that is used in aPhase block type.

l Import with overwrite results in deletion of enumeration value that is used in aPhase block type

l Import with overwrite results in change of enumeration ordinal that is used in aPhase block type

In all these cases an error is reported and the import operation stops.

8.7.4 Import/Export of a Phase block type with parameter type Publicenumeration

Phase block types can be exported or imported using the Import/Export functionality available inControl Builder. A Phase block type can have a dependency on the Public enumeration holderblock if the Phase block type has one or more parameters of type Public enumerations. Tosuccessfully import the Phase block type, either the Public enumeration holder block needs to beimported along with Phase block type or it needs to be available in the Control Builder librarybefore importing the Phase block type.

ATTENTION

Public enumeration sets are not exported automatically. They need to be explicitly exportedwhile exporting a Phase block type.

- 157 -

Page 158: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Export of Phase block type with Public enumeration holder

1. Choose File > Export or right-click the object and click Export.

The Export dialog box appears.

2. Click Browse and select the directory where you want to save the exported objects.

NOTE

The directory C:\ProgramData\Honeywell\Experion PKS\Ixport isselected by default.

3. Select the Phase block ‘PHASE_LIB:PB_BLOCK_1’ and Public enumeration holder block‘ENUM_LIB:ENUM_HOLDER’ to be exported and click Export.

The components selected for export is displayed in the Selected Objects For Export list.

Phase block type and Public enumeration holder block is exported under new folders namedas ‘PHASE_LIB.PB_BLOCK_1’ and block ‘ENUM_LIB.ENUM_HOLDER’. To import this Phaseblock type to another server, then both the folders ‘PHASE_LIB.PB_BLOCK_1’ and ‘ENUM_LIBRARY.ENUM_HOLDER’ needs to be copied to that server. After copying the folder to theanother server, you can use Control Builder Import function to import the block.

Import of Phase block type with Public enumeration holder block

1. Choose File > Import.

The Import dialog box appears.

2. Click Browse and select the directory from where you want to import the objects.

3. Select Phase block type, for example ‘PHASE_LIB:PB_BLOCK_1’ and Public enumerationholder block, for example ‘ENUM_LIB:ENUM_HOLDER_1’, and click Import.

The components selected for export is displayed in the Selected Objects For Export list.

- 158 -

Chapter 8 - Maintain equipment model

Page 159: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 8 - Maintain equipment model

On successful import, Phase block type and Public enumeration holder block are created inthe library.

ATTENTION

When the Phase block type is imported without its dependency, it results in an errorand the import operation stops. If the ‘PHASE_LIB:PB_BLOCK_1’ is not importedalong with Public enumeration holder block ‘ENUM_LIB:ENUM_HOLDER’ and alsoif Public enumeration holder block does not exist in the library, then an error isreported. To resolve this import error, you must re-import the Phase block with allthe dependencies or before importing ensure that all the dependencies areavailable in the library.

8.7.5 Import/Export of Map block types

Map block types can be exported or imported using the Import/Export functionality available inControl Builder. A Map block type can have a dependency on user-defined block types like Phaseblock types or Custom Data block types. A Map block type has a dependency on a Phase block typeif the Map block type references it as a type in the definition of a function reference. Similarly, Mapblock type has a dependency on a Custom Data block type if a Map block type references it as atype in the definition of a block reference. Also, the block reference added using a standard block inthe Control Builder library does not add a dependency because it is present by default. Forexample: block reference to ‘REGCTL:PID’ does not add a dependency.

For a Map block type, dependencies can also be multilevel caused indirectly by dependencies ofcomponents on which it is dependent on other components. For example, if a Map block typedepends on a Phase block type and that in turn uses public enumeration holder block, the Mapblock type has a dependency on that public enumeration holder block too.

Export of Map block type

Map block type ‘MAP_LIB:MAP_BLOCK_1’ has the following dependencies.

- 159 -

Page 160: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

l On Phase block types ‘PHASE_LIB:PB_BLOCK_1’ and ‘PHASE_LIB:PB_BLOCK_2’

l On Phase block template ‘PB_BLOCK_2T’

l On public enumeration holder block ‘ENUM_LIB:ENUM_HOLDER’. This is a dependencybecause Phase block types ‘PHASE_LIB:PB_BLOCK_1’ and ‘PHASE_LIB:PB_BLOCK_2’ use thepublic enumeration holder block ‘ENUM_LIB:ENUM_HOLDER’.

Perform the following steps to export the Map block type ‘MAP_LIB:MAP_BLOCK_1 along with itsdependencies.

1. Choose File > Export or right-click the object and click Export.

The Export dialog box appears.

2. Click Browse and select the directory where you want to save the exported objects.

NOTE

The directory C:\ProgramData\Honeywell\Experion PKS\Ixport isselected by default.

3. Select PHASE_LIB:PB_BLOCK_1’, ‘PHASE_LIB:PB_BLOCK_2’, ‘PB_BLOCK_2T’, ‘ENUM_LIB:ENUM_HOLDER,’ and Map block type ‘MAP_LIB:MAP_BLOCK_1’ and click Export.

The components selected for export is displayed in the Selected Objects For Export list.

The selected Map block types and the referenced custom block types, UDTs are exported. The Mapblock type, Phase block type, Phase template, and public enumeration holder blocks are exportedunder new folders. To import this Map block type to another server, all the exported folders need tobe copied to that server. After copying the folder to another server, you can use Control BuilderImport function to import the block.

Import of MAP block type

Map block type ‘MAP_LIB:MAP_BLOCK_1’ has the following dependencies.

- 160 -

Chapter 8 - Maintain equipment model

Page 161: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 8 - Maintain equipment model

l On Phase block types ‘PHASE_LIB:PB_BLOCK_1’ ad ‘PHASE_LIB:PB_BLOCK_2’

l On Phase block template ‘PB_BLOCK_2T’

l On public enumeration holder block ‘ENUM_LIB:ENUM_HOLDER’. This is a dependencybecause Phase Block types ‘PHASE_LIB:PB_BLOCK_1’ and ‘PHASE_LIB:PB_BLOCK_2’ use thepublic enumeration holder block ‘ENUM_LIB:ENUM_HOLDER.’

Perform the following steps to import the Map block type ‘MAP_LIB:MAP_BLOCK_1 along with itsdependencies.

1. Choose File > Import.

The Import dialog box appears.

2. Click Browse and select the directory from where you want to import the objects.

3. Select ‘PHASE_LIB:PB_BLOCK_1’, ‘PHASE_LIB:PB_BLOCK_2’, ‘PB_BLOCK_2T’, ‘ENUM_LIB:ENUM_HOLDER’ and Map block type ‘MAP_LIB:MAP_BLOCK_1’ and click Import.

The components selected for import are displayed in the Selected Objects For Import list.

On successful import, the Map block and the dependent Custom Data blocks, UDTs arecreated in the library.

ATTENTION

When the Map block type is imported without its dependency, it results in an errorand the import operation stops. If the Map block type ‘MAP_LIB:MAP_BLOCK_1’ isnot imported along with its dependencies and also if those dependencies do notexist in the library, a similar error is reported. To resolve this import error, you mustre-import the Map block type with all the dependencies or before importing ensurethat all the dependencies are available in the library.

8.7.6 Import/Export of Unit classes

- 161 -

Page 162: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Unit class can be exported or imported using the Import/Export functionality available in ControlBuilder. A Unit class can have a dependency on user-defined block types, such as a Map block typeor a Custom Data block type. A Map block type has a dependency on a Phase block type if the Mapblock type references it as a type in definition of function reference. Similarly, a Map block type hasa dependency on a custom Data block type if the Map block type references it as a type in definitionof block reference.

For a Unit class, dependencies can also be multilevel caused indirectly by dependencies ofcomponents on which it is dependent. For example, assume that a Unit class contains a Map blocktype that depends on a Phase block type. In this scenario, if the Phase block type used in the Mapblock type uses a public enumeration holder block then the Map block type has a dependency onpublic enumeration holder block.

In the following example, the Unit class ‘Distribution’ is dependent on the following:

l On Map block type 'LIB_MAP:SET1' because Unit class 'DISTRIBUTION' has an instance of Mapblock 'LIB_MAP:SET1.'

l On Phase block type 'LIB_PHASE: PHASE_1' because Map block 'LIB_MAP:SET1' has afunction named FUNCTION1 that has Phase Type as ‘LIB_PHASE:PHASE_1’. Similarly, it has adependency on Phase block types 'LIB_PHASE: PHASE_2,' 'LIB_PHASE: PHASE_3,' and 'LIB_PHASE: PHASE_4.'

l On public enumeration holder block 'LIB_PE:PUBLIC1' because Phase block type 'LIB_PHASE:FUNCTION1' has a parameter named F3 and F5 of enumeration type that are usingenumeration sets name #EN1 and #EN2. Enumeration sets #EN1 and #EN2 are defined inpublic enumeration holder block 'LIB_PE:PUBLIC1.'

The following figure illustrates the export and import of Unit class 'Distribution.'

Figure 8.3 An example for export and import of a Unit class

Export of Unit class

As described previously, the Unit class 'Distribution' has the following dependencies.

- 162 -

Chapter 8 - Maintain equipment model

Page 163: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 8 - Maintain equipment model

l On Map block type 'LIB_MAP:SET1'

l On Phase block types 'PHASE_LIB:PB_BLOCK_1,' 'PHASE_LIB:PB_BLOCK_2,' 'PHASE_LIB:PB_BLOCK_3,' and 'PHASE_LIB:PB_BLOCK_4'

l On public enumeration holder block 'ENUM_LIB:ENUM_HOLDER'

Perform the following steps to export Unit class 'Distribution' along with its dependencies.

1. Choose File > Export or right-click the object and click Export.

The Export dialog box appears.

2. Click Browse and select the directory where you want to save the exported objects.

Note: The directory C:\ProgramData\Honeywell\Experion PKS\Ixport is selected by default.

3. SelectUnit class 'Distribution,' 'PHASE_LIB:PB_BLOCK_1,' 'PHASE_LIB:PB_BLOCK_2,' 'PHASE_LIB:PB_BLOCK_3,' 'PHASE_LIB:PB_BLOCK_4,' 'ENUM_LIB:ENUM_HOLDER,' and Map blocktype 'MAP_LIB:MAP_BLOCK_1' and click Export.

The components selected for export is displayed in the Selected Objects For Export list.

The selected Unit class, Map block types and referenced custom Data block types, UDTs areexported. The Map block type, Phase block type, Phase template, and public enumerationholder blocks are exported under new folders To import this Unit class type to another server,all the exported folders and their content needs to be copied to that server. After copying thefolder to another server, you can use Control Builder Import function to import the block.

Import of Unit class

Unit class 'Distribution' has the following dependencies.

l On Map block type 'LIB_MAP:SET1'

l On Phase block types 'PHASE_LIB:PB_BLOCK_1,' 'PHASE_LIB:PB_BLOCK_2,' 'PHASE_LIB:PB_BLOCK_3,' and 'PHASE_LIB:PB_BLOCK_4'

l On public enumeration holder block 'ENUM_LIB:ENUM_HOLDER'

Perform the following steps to import Unit class ‘Distribution’ along with its dependencies.

- 163 -

Page 164: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

1. Choose File > Import.

The Import dialog box appears.

2. Click Browse and select the directory from where you want to import the objects.

3. Select Unit class 'Distribution,' 'PHASE_LIB:PB_BLOCK_1,' 'PHASE_LIB:PB_BLOCK_2,' 'PHASE_LIB:PB_BLOCK_3,' 'PHASE_LIB:PB_BLOCK_4,' 'ENUM_LIB:ENUM_HOLDER,' and Map blocktype 'MAP_LIB:MAP_BLOCK_1' and click Import.

The components selected for import are displayed in the Selected Objects For Import list.

On successful import, the Unit class 'Distribution' and the dependent custom block types,UDTs are created in the library.

ATTENTION

When the Unit class is imported without its dependency, it results in an error andthe import operation stops. If the Unit class ‘Distribution’ is not imported along withits dependencies and also if those dependencies do not exist in the library, a similarerror is reported. To resolve this import error, you must re-import the Unit classwith all the dependencies or before importing ensure that all the dependencies areavailable in the library.

8.7.7 Import/Export of proxy strategies

Proxy strategies can be exported or imported using the Import/Export functionality available inControl Builder. Proxy strategies can include the following:

l cluster representing remote server cluster

l proxy node representing controller configured in the remote server cluster

l proxy tags that represent recipes/procedures on the remote server cluster

- 164 -

Chapter 8 - Maintain equipment model

Page 165: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 8 - Maintain equipment model

Proxy tags can be one of the three types, that is, proxy Master Recipe, proxy RCM, or proxy SCM.Proxy cluster does not have any dependencies and can be imported or exported independently.Proxy node has a dependency on proxy cluster since it is an assignment parent of proxy node. Toimport a proxy node, ensure that either the proxy cluster is imported along with the proxy node orit exists before importing the proxy node.

Proxy tags (proxy Master Recipe, proxy RCM, and proxy SCM) have a dependency on proxy nodessince it is an assignment parent of proxy tag. Proxy tags can have a dependency on a Phase blocktype if they are using it as a Data block. Dependencies of proxy tag can also be multilevel causedindirectly by dependencies of components on which it is dependent. For example, if a proxy tagdepends on a Phase block type and if that Phase block type uses Public enumeration holder blockthen the proxy tag has a dependency on that Public enumeration holder block. To import proxytags, ensure that either all its dependencies are imported along with it or they already exist beforeimporting the proxy tag.

In the following example proxy tag ‘PRETREAT_UP’ is dependent on the following:

l On Phase block type ‘LIB_PHASE: PHASE_2’ because it is using it as a Data block

l On proxy node ‘C200E_25’ because it is an assignment parent

l On Cluster block ‘CLUSTER_7’ because it is a cluster block and parent of proxy node ‘C200E_25’

The following figure illustrates the export and import of the proxy tag ‘PRETREAT_UP’.

Figure 8.4 An example for export and import of a proxy tag

Export of proxy strategies

As described previously, the proxy tag ‘PRETREAT_UP’ has the following dependencies.

- 165 -

Page 166: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

l On Phase block type ‘LIB_PHASE: PHASE_2’ because it is using it as a Data block

l On proxy node ‘C200E_25’ because it is an assignment parent

l On cluster block ‘CLUSTER_7’ because it is a cluster block and parent of proxy node ‘C200E_25’

Perform the following steps to export the proxy tag ‘PRETREAT_UP’ along with its dependencies.

1. Choose File > Export or right-click the object and click Export.

The Export dialog box appears.

2. Click Browse and select the directory where you want to save the exported objects.

Note: The directory C:\ProgramData\Honeywell\Experion PKS\Ixport is selected by default.

3. Select proxy tag ‘PRETREAT_UP’, ‘PHASE_LIB:PB_BLOCK_2’, ‘C200E_25’, and ‘CLUSTER_7’and click Export.

The components selected for export is displayed in the Selected Objects For Export list.

The selected proxy tag, Phase block, proxy cluster, and proxy node are exported. To import thisproxy tag to another server, all the exported folders and their content needs to be copied tothat server. After copying the folder to another server, you can use Control Builder Importfunction to import the block.

Import of proxy strategies

Proxy tag ‘PRETREAT_UP’ has the following dependencies.

l On Phase block type ‘LIB_PHASE: PHASE_2’ because it is using it as a Data block

l On proxy node ‘C200E_25’ because it is an assignment parent

l On Cluster block ‘CLUSTER_7’ because it is a cluster block and parent of proxy node ‘C200E_25’

Perform the following steps to import proxy tag ‘PRETREAT_UP’ along with its dependencies.

- 166 -

Chapter 8 - Maintain equipment model

Page 167: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 8 - Maintain equipment model

1. Choose File > Import.

The Import dialog box appears.

2. Click Browse and select the directory from where you want to import the objects.

3. Select proxy tag ‘PRETREAT_UP’, ‘PHASE_LIB:PB_BLOCK_2’, ‘C200E_25,’ and ‘CLUSTER_7’and click Import.

The components selected for import are displayed in the Selected Objects For Import list.

On successful import, the proxy tag ‘PRETREAT_UP’ and the dependent blocks are created inthe Control library.

ATTENTION

If the proxy tag ‘PRETREAT_UP’ is not imported along with its dependencies andalso if those dependencies do not exist in the library, then an error is reported. Toresolve this import error, you must re-import the proxy tag with all thedependencies or before importing, ensure that all the dependencies are availablein the library.

8.8 Batch Search Scenarios

l Searching for an enumeration set

l Searching for public enumerations

l Searching for private enumeration

l Searching for batch scenarios

8.8.1 Searching for an enumeration set

Before making any changes to a public/private enumeration set used in a Phase block type, you

- 167 -

Page 168: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

need to assess the impact of the public/private enumeration set. The changes can includeadding/modifying/deleting enumeration set members of the public/private enumeration set. Italso includes the operation performed from Control Builder such as Import With Overwrite option.

The search returns one of the following results based on the search criteria.

l Lists all Phase block instances and templates where parameter of enumeration type is definedand its enumeration value.

l Lists the name of the public enumeration holder block where the enumeration set is definedin the "Block Type " column.

l Lists an empty parameter name if the enumeration set that are not used to define anyparameter.

This result helps you to identify the public enumeration sets that are defined but not used.

NOTE

The search results may also list all formula/report parameters of type private/publicenumeration type defined in the Phase block type.

To find all instances of the enumeration sets , you can use the "Search for parameter in thesystem (Parameter search)" functionality available in the Experion Search utility.

To launch Configuration Studio

1. Click Start > Honeywell ExperionPKS > Configuration Studio.

The Configuration Studio window opens.

2. Select a server or a system from the list, and click Connect to logon to the system or server.

3. In the left pane, click the system (or server) to display the Search tasks in the right pane of theConfiguration Explorer tab.

4. Click the Search the Server option.

The Server Search page appears.

5. Click Advanced Searches.

The Advanced Searches page appears.

6. Select Search for Process Point Parameters from Search for drop-down list.

8.8.2 Searching for public enumerations

Following are the search criteria to be used for searching the public enumeration set.

l Enum=<EnumerationSet>: Lists all enumeration sets whose name matches the enumerationset name including public enumeration set.

l Enum=<EnumerationHolder>.<EnumerationSet>: Lists only the enumeration set defined in apublic enumeration holder block.

l Enum=<EnumerationHolder>: Lists the usage of all the public enumerations defined in apublic enumeration holder block.

Prerequisites

l A public enumeration holder block exists and it is defined with a public enumeration set.

l A parameter type of the Phase block type is configured as "ENUM."

- 168 -

Chapter 8 - Maintain equipment model

Page 169: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 8 - Maintain equipment model

To search for public enumeration using "Enum=<EnumerationSet>" criteria

1. In the named text box, type Enum=<EnumerationSet>. For example, type enum=OFF_ON.

2. Click Search.

The results are displayed in the right pane.

To search for public enumeration using"Enum=<EnumerationHolder>.<EnumerationSet>" criteria

1. In the named text box, type Enum=<EnumerationHolder>.<EnumerationSet>. For example,type enum=GLOBAL.OFF_ON.

2. Click Search.

The results are displayed in the right pane.

- 169 -

Page 170: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

- 170 -

Chapter 8 - Maintain equipment model

Page 171: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 8 - Maintain equipment model

To search for public enumeration using "Enum=<EnumerationHolder>"criteria

1. In the named text box, type Enum=<EnumerationHolder>. For example, type enum=GLOBAL.

2. Click Search.

The results are displayed in the right pane.

8.8.3 Searching for private enumeration

Following are the search criteria to be used for searching the private enumeration set.

l Enum=<EnumerationSet>: Lists all enumeration sets whose name matches the enumerationset name including public enumeration set.

l Enum=<PhaseBlock>.<EnumerationSet>: Lists only the enumeration set defined in a Phaseblock type.

l Enum=<PhaseBlock>: Lists all the Phase block types and the enumeration set defined in aPhase block type.

Prerequisites

l A Phase block type configured with private enumeration sets exists.

l A parameter type of the Phase block type is configured as "ENUM."

- 171 -

Page 172: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

To search for private enumeration using "Enum=<EnumerationSet>"criteria

1. In the named text box, type Enum=<EnumerationSet>. For example, type enum=desttank.

2. Click Search.

The results are displayed in the right pane.

To search for private enumeration using"Enum=<PhaseBlock>.<EnumerationSet>" criteria

1. In the named text box, type Enum=<PhaseBlock>.<EnumerationSet>. For example, typeenum=04YF_XFEROUT_PH.desttank.

2. Click Search.

The results are displayed in the right pane.

- 172 -

Chapter 8 - Maintain equipment model

Page 173: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 8 - Maintain equipment model

To search for private enumeration using "Enum=<PhaseBlock>" criteria

1. In the named text box, type Enum=<PhaseBlock>. For example, type enum=04YF_XFEROUT_PH.

2. Click Search.

The results are displayed in the right pane.

- 173 -

Page 174: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

8.8.4 Searching for batch scenarios

Before making any changes to the components used in the Recipes/SCM, you need to assess theimpact of those components used in the Recipes/SCM. The components include the Phase blocktype, Map block type, and the Unit class. In addition, you need to identify the usage of thosecomponents in Recipes/SCM. For example, a master recipe can use the Phase block to invokeanother Master Recipe/RCM.

To perform the batch search, you can use the "Determine where an object is used in the system(Where Used)" functionality available in the Experion Search utility.

To launch Configuration Studio

1. Click Start > Honeywell ExperionPKS > Configuration Studio.

The Configuration Studio window opens.

2. Select a server or a system from the list, and click Connect to logon to the system or server.

3. In the left pane, click the system (or server) to display the Search tasks in the right pane of theConfiguration Explorer tab.

4. Click Determine where an object is used in the system (Where Used) from the Search tasks listto launch the Experion Search utility.

To search for batch scenarios using Phase block name

1. In the named text box, type the Phase block name. For example, type the Phase block name as04YF_AGITATE_PH.

2. Click Search.

The results are displayed in the right pane.

- 174 -

Chapter 8 - Maintain equipment model

Page 175: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 8 - Maintain equipment model

The following figure displays the search result for Recipes/SCM where the Phase block is usedas a Data block.

The following figure displays the search result for Recipes where the Phase block is used as aderivation child.

The following figure displays the search result for Recipes/SCM where the Phase block is usedas an instance.

- 175 -

Page 176: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

The following figure displays the search result for Recipes where the Phase block is used as aninstantiation parent.

The following figure displays the search result for Recipes/SCM where the Phase block is usedin an expression.

- 176 -

Chapter 8 - Maintain equipment model

Page 177: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 8 - Maintain equipment model

To search for batch scenarios using Map block name

1. In the named text box, type the Map block name. For example, type the Map block name as"04Y_FERMENTOR_Map."

2. Click Search.

The results are displayed in the right pane.

The following figure displays the search result for the Unit class/UCMs that uses the Mapblock type.

- 177 -

Page 178: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

To search for batch scenarios using Unit class name

1. In the named text box, type the Unit class name. For example, type the Unit class name as"04Y_FERMENTOR_C."

2. Click Search.

The results are displayed in the right pane.

The following figure displays the search result for the Master Recipes that refers to a Unitclass/UCM.

- 178 -

Chapter 8 - Maintain equipment model

Page 179: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 8 - Maintain equipment model

To search for batch scenarios using child master recipe name

1. In the named text box, type the child master recipe name. For example, type the child MasterRecipe name as "04YF_3_MAKING."

2. Click Search.

The results are displayed in the right pane.

The following figure displays the search result for the Recipes where the Recipes are referredas equipment name.

- 179 -

Page 180: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

To search for batch scenarios using "Function = "

1. In the Search For text box, type the function references. The function references can be inone of the following format.Function=MapBlock nameFunction=UnitClassnameFunction=MapBlock.FunctionName

2. Click Search.

The results are displayed in the right pane.

The following figure is an example for "Function =04Y_FERMENTOR_MAP." This search is usedto find the list of Phase blocks as an indirect reference through Unit class.

- 180 -

Chapter 8 - Maintain equipment model

Page 181: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 8 - Maintain equipment model

The following figure is an example for "Function =04Y_FERMENTOR_C." This search is used tofind the list of Phase blocks used as an indirect reference through Unit class.

The following figure is an example for "Function =04Y_FERMENTOR_MAP.AGITATE." Thissearch is used to find the list of Phase blocks as an indirect reference through Unit class.

- 181 -

Page 182: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

MIGRATION AND INTEROPERABILITY

9.1 About migrating from R410 to future releases

EBM supports On-Process Migration (OPM) of controller. As part of controller OPM, the MasterRecipes/RCMs/SCMs are migrated. Activities associated with RCMs/SCMs can be migrated at allstages (Pre-Execution, Execution, and Post-Execution). However, activities associated with MasterRecipes can be migrated only if they are in Pre-Execution or Post-Execution stages.

Note that, Server OPM with Control Recipes is fully supported.

For more information about migrating from R410 to future releases, refer to the appropriateExperion migration documentation.

l Pre-R410 to R410 migration considerations

l About interoperability

l Considerations for controller OPM from R410 to future releases

9.2 Pre-R410 to R410 migration considerations

There are no mandatory migration guidelines applicable for migrating a pre-R410 EBM system toan R410 EBM system. Also, general Experion migration guidelines hold good for EBM migration.However, the following specific configuration/settings must be reviewed to employ the R410 EBMfeatures after migration.

l Activity-related configuration

l Intercluster peer-to-peer communication-related configuration

9.2.1 Activity-related configuration

The new EBM R410 features are not enabled for strategies that are migrated from a pre-R410release. You may review the configuration options to enable the new features in EBM R410. Thefollowing activity-related parameters can be reviewed after migrating to R410 to use new features.

l Number of Activities (NUMACT)

l Parameter Initialization Option (PARAMINIT)

l Activity creation option (ACTOPT)

l Type of the Activity (ACTTYPE)

To review and re-configure these parameters, refer to the Activities Configuration. Additionally,you can also refer to the Configure Batch Preferences to review and configure some moreactivity-related configuration.

- 182 -

CHAPTER

9

Page 183: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

9.2.2 Intercluster peer-to-peer communication-related configuration

After migrating to R410, you can review the following if you plan to use any of the controllers forintercluster peer-to-peer communication.

l New Comm# Start Range and New Comm# End Range

l Cluster ID

For more information about configuring the intercluster peer-to-peer communication-relatedparameters, refer to the Configure Batch Preferences chapter.

9.3 About interoperability

General Experion interoperability is applicable for EBM as well. For more information aboutExperion interoperability, refer to the ExperionR410 General Release Software Change Notice.

C200 does not support Activities and Class-based recipes. However, a Phase block inC200E/C300/ACE can be connected to an SCM in C200 in the same cluster.

Following are the interoperability considerations when the Server/Console, Station, and Tools arein R410 release and the controller is in pre-R410 release.

l An RCM/SCM cannot automatically create activities even if the "ACTOPT " parameter is "Auto"or "All," since the functionality is not supported for a pre-R410 CEE.

l An RCM/SCM is not available in Activity Detail Pane even if the "ACTOPT" parameter is"UserOrApp" or "All," since the functionality is not supported for a pre-R410 CEE.

l An error message appears when pre-R410 controllers are loaded with the CEE-residentparameters (ACTTYPE, ACTOPT, and NUMASSOCACT).

9.4 Considerations for controller OPM from R410 to futurereleases

As mentioned in the beginning of this chapter, controller OPM is not supported if there areactivities executing for Master Recipes. However, you can still choose to perform an OPM in such ascenario. If you choose to do so, be aware that once the OPM is complete, the activities areremoved and all data associated with them are lost.

You can decide the OPM option by reviewing the following parameters.

l Control Recipes count (NUMACTCR): Used for determining the number of activities associatedwith Master Recipes that are currently executing.

l Migration options (ACTCRMIGOPT): Used for selecting the migration option.o Disabled (default): Use this option if you want to prevent the OPM when the activities

associated with Master Recipes are executing. That is, you want to prevent the OPMwhen the value of NUMACTCR is greater than zero.

o Forceremove: Use this option if you want to go ahead with the OPM even if theactivities associated with Master Recipes are executing. That is, you want to proceedwith OPM even when the value of NUMACTCR is greater than zero. However, asmentioned earlier, in such a case, after OPM, the activities are removed and all dataassociated with them are lost.

For more information on performing controller OPM, refer to the appropriate Experion migrationdocumentation.

- 183 -

Chapter 9 - Migration and Interoperability

Page 184: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

TROUBLESHOOTING SCENARIOS RELATED TOBATCH/PROCOPS IMPLEMENTATION

l The CEEs Activity Memory Capacity has been reached

l SIMCOMMAND is not allowed with activities

l Failure of synchronizing scheduled parameters at the end of pre-execution

l SCM/RCM cannot transition to inactive state

l Activity is not available in the middle of batch – for Class-based recipe only

l RCM remains in the idle state and does not acquire

l RCM is not idle and does not acquire

l Phase block displays Child Activity Create Warning

l Activity is not available in CEE and ACTOPT is set to AUTO

l Loss of communication with the controller

l IR Phase block cannot connect to Master Recipe without an activity

l Invalid child activity due to Phase block connections

l Internal memory error

l Failure of user-created activity during memory allocation

l Failure of synchronizing scheduled parameters during initialization

l Database errors

l Child Activity Create Fail

l CEE does not contain sufficient memory

l Cannot load NUMACT when too many activities are running in CEE

l Cannot start batch due to lack of activity in the controller

l Cannot load NUMACT through Load While Active when the controller is in Idle state

l Cannot load CEE because of the tagged objects limitation

l Cannot create X_DATAINIT block

l Cannot create child activity due to invalid Phase block configuration

l Cannot create activity when NUMACT is zero

l Cannot allocate CAMs internal memory

l CAM does not reduce NUMACT

l Cannot allow activity when the controller is in SIMFREEZE

l Phase block cannot acquire child RCM/SCM in another cluster

l Child SCM/RCM stops to respond in another cluster

l Child SCM/RCM stops to respond in another cluster using a Master Recipe

l Child SCM/RCM stops to respond in another cluster using instance based activities

- 184 -

CHAPTER

10

Page 185: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

l Phase block cannot acquire child RCM/SCM using another Phase block equipment name

l Cannot enter an RCM arbitration queue when another entity acquires an RCM

l Can enter an RCM arbitration queue when another entity acquires an RCM

l Failure for user activity creation

l Parent RCM hangs and Phase block actively polling for resource RCM/SCM using anotherPhase blocks Equipment name

l Resources not available during load time

l Cannot start batch due to lack of memory in the controller

l Insufficient memory in the middle of a batch

l Child or parent RCM/SCM name is unresolvable

l Orderly removal of requester

l Requester cannot acquire resource and resource has no queue

l Unexpected removal of resource

l Reload of resource after deletion of resource while requester.acqstate=error

l Disorderly removal or unexpected damage of requester

l Phase block cannot store all formula parameters

l Phase block cannot read all report parameters

10.1 The CEEs Activity Memory Capacity has been reached

10.1.1 Diagnostic check

When you increase the NUMACT and perform a Load while Active, the CAM cannot create enoughmemory for all of the activities. During loading, an error message The CEEs Activity MemoryCapacity has been reached appears .

ATTENTION

This error is very critical because the CEE does not have sufficient function block memorywhich exceeds the limitation. Therefore, it is recommended not to run this scenario.

10.1.2 Cause

The controller does not have sufficient memory for all the activities. TOTALACTCAP is less thanNUMACT and it represents the memory that is successfully used for the activities.

10.1.3 Solution

Since the TOTALACTCAP is less than the NUMACT, the NUMACT must be reduced. Therefore,ensure that TOTALACTCAP and NUMACT are equal or the NUMACT must be less than theTOTALACTCAP.

10.2 SIMCOMMAND is not allowed with activities

10.2.1 Diagnostic check

You cannot change the SIMCommand because the controller is configured with the activities.

Or

- 185 -

Chapter 10 - Troubleshooting scenarios related to Batch/ProcOps implementation

Page 186: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 10 - Troubleshooting scenarios related to Batch/ProcOps implementation

The Store to SIMCommand is rejected because the controller is configured with the activities.

10.2.2 Cause

Simulation environment has NUMACT configured as non-zero.

10.2.3 Solution

Reduce the NUMACT to zero and then perform a load when the operation is active to the CEEblock.

10.3 Failure of synchronizing scheduled parameters at the end ofpre-execution

10.3.1 Diagnostic check

An error appears during the synchronization of the following:

l Activity Stage = Failed

l Activity Status = Error

l Activity Status Description = Activity Out of Sync

10.3.2 Cause

When a created activity transitions from pre-execution to execution, it attempts to synchronize itsscheduled parameters with its associated SCM/RCM. This is required because you can change thephase of execution in the associated SCM/RCM between the time of activity it creates and starts.

10.3.3 Solution

l The MAXACTPERIOD must be less that the Phase Execution period of the associatedRCM/SCM.

l Check for the MAXACTPERIOD and compare it with the Phase Execution period of theassociated RCM/SCM.

l Change the Phase Execution Period to the default value (-1) and then reload the RCM/SCM.

10.4 SCM/RCM cannot transition to inactive state

10.4.1 Diagnostic check

The RCM/SCM cannot transition to inactive state, if there is any activity associated with theRCM/SCM.

10.4.2 Cause

One or more activities are associated with the RCM/SCM.

10.4.3 Solution

- 186 -

Page 187: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

1. Ensure that there are no activities associated with RCM/SCM. This means that the activitiesare not in Exec or Pre Exec stage from the activity summary display.

ATTENTION

Pre-Exec, Exec, and Post-Exec are the stages of an activity.

2. If the activity is in Exec stage, wait till the activity completes the execution, which means thatthe activity reaches Pre-Exec/Post Exec stage.

3. Remove the activities which are in Pre Exec/Post-Exec stage.

4. Ensure the parameter NUMASSOCACT equals to zero, which is displayed in the moduleproperties of RCM/SCM block. Therefore, when the value is zero, SCM/RCM can beinactivated.

10.5 Activity is not available in the middle of batch – for Class-based recipe only

10.5.1 Diagnostic check

In the middle of a batch, the activity can be insufficient in the controller, if there are no enoughactivities allocated at the configuration time. Therefore, a batch cannot continue and a diagnosticalarm appears and display on system notification display appears in the Station.

10.5.2 Cause

When CURRNUMACT reaches to TOTALCAPACT, you fail to create another activity due tounavailability of activity in controller.

10.5.3 Solution

l Increase the number of activities and perform a CEE reload when active.

l If the number of activities reaches the maximum, the strategy can be re-configured. Thereforethe number of activities required must be within the range of activities that must beconfigured.

l Wait for another batch to complete and to free the activity. The diagnostic alarm appears oncean activity is available.

10.6 RCM remains in the idle state and does not acquire

10.6.1 Diagnostic check

RCM remains in the idle state and does not acquire.

10.6.2 Cause

The initialization of an activity fails when the RCM is in Idle state.

10.6.3 Solution

Ensure MAXACTPERIOD of the CEE is equal to the Phase period of the RCM.

- 187 -

Chapter 10 - Troubleshooting scenarios related to Batch/ProcOps implementation

Page 188: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 10 - Troubleshooting scenarios related to Batch/ProcOps implementation

10.7 RCM is not idle and does not acquire

10.7.1 Diagnostic check

The activity acquires an RCM successfully, but it does not have the control of the RCM.

l Activity Stage = Pre-Exec

l Activity Status = Info

l Activity Description = Unsuitable Equipment State

ATTENTION

The final states are Idle, Complete, Stopped, and Aborted. In this scenario, the RCM is in anyother state such as, Running, Holding, and Aborting, and so on.

The Arbitration tab of an RCM indicates that the activity acquires.

10.7.2 Cause

l An RCM is not in Idle state/any terminal state.

l Another owner has acquired an RCM is acquired.

10.7.3 Solution

l After an RCM reaches a final state such as Idle, Complete, Stopped, or Aborted, the activityissues a reset command to the RCM.

l The activity Status and Description is set to OK.

l Now, the activity can control an RCM and can issue a start command.

ATTENTION

The activity acquires an RCM to issue a reset and start commands under the followingconditions.

l If an RCM does not acquire.

l If an RCM is not available in the states such as, Complete, Stopped, or Aborted.

10.8 Phase block displays Child Activity Create Warning

10.8.1 Diagnostic check

The Phase block displays Child Activity Create Warning during execution.

10.8.2 Cause

The Phase block sends a create activity to the child RCM. This activity fails to create. However, thePhase block continues to execute without an activity. The CAMM errors (CAMmemnotAllocated,NotEnoughMemforNUMACT or OutofActivities) might cause this error.

- 188 -

Page 189: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

10.8.3 Solution

1. Check for the NUMACT and TOTALCAPACT and increase the NUMACT.

2. Reload the strategies and restart the batch.

10.9 Activity is not available in CEE and ACTOPT is set to AUTO

10.9.1 Diagnostic check

An RCM/SCM attempts to create an activity, but none are available. An RCM/SCM continues toexecute without an activity. The ExecStatus of the RCM/SCM sets to ‘Fail’ and the ExecDesc sets to‘Activity not associated’.

10.9.2 Cause

l The user loads RCM/SCM block to CEE.

l The user commands the RCM/SCM block to start.

10.9.3 Solution

Load the NUMACT value to a maximum limit (1000) When it reaches the maximum limit thenremove the activities that are available in pre-execution/post execution stage.

10.10 Loss of communication with the controller

10.10.1 Diagnostic check

SAM is not aware of the loss of communication with a controller. If SAM requests the RCM runcount from a controller that is not connected then an error on the request appears. This clears theRCM count for that controller and recalculates the total run count.

10.10.2 Cause

SAM service does not run.

10.10.3 Solution

SAM is not directly involved in the recovery of the communication with the controller. When thecommunication is restored, SAM requests to the controller and it handles normally.

10.11 IR Phase block cannot connect to Master Recipe without anactivity

10.11.1 Diagnostic check

The error Conf with MR and No Activity appears.

10.11.2 Cause

- 189 -

Chapter 10 - Troubleshooting scenarios related to Batch/ProcOps implementation

Page 190: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 10 - Troubleshooting scenarios related to Batch/ProcOps implementation

l The Phase block is configured with a Master Recipe, but an RCM does not consist of an activitythat is configured.

l The Phase block can be configured with Master Recipes, but an activity must be available withan RCM.

10.11.3 Solution

You must reload and reconfigure the RCM to create activities.

10.12 Invalid child activity due to Phase block connections

10.12.1 Diagnostic check

The Phase block stops to execute and does not communicate to child activity. The Phase blockdisplays an error message Child activity is invalid. However, an RCM also displays the same error.

10.12.2 Cause

Child is in a peer controller and you perform a cold start when the child RCM is in idle state. Thechild activity does not appear and hence the Phase block can not communicate with it.

10.12.3 Solution

You must reset the parent RCM and then the Phase block appears blank or another activity nameappears in the equipment. However, it no longer communicates to the same activity.

10.13 Internal memory error

10.13.1 Diagnostic check

Following are the errors that appear.

l Activity Stage = Failed

l Activity Status = Error

l Activity Status Description = Internal Error

10.13.2 Cause

Following are the causes.

l Initialization of the activity data block fails.

l The activity cannot access its data block.

l The activity cannot access its associated entity.

l The activity cannot access its execution object.

10.13.3 Solution

1. Check that the CEE is in RUN State.

2. Do not perform CEE with a Cold Start and check the CURRNUMACT is less than theTOTALCAPACT.

3. Remove the activity that fails and create a new activity for the same entity.

- 190 -

Page 191: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

10.14 Failure of user-created activity during memory allocation

10.14.1 Diagnostic check

The user creates an activity and it appears as follows.

l Activity Stage = Failed

l Activity Status = Error

l Activity Status Description = Controller Out Of Memory

10.14.2 Cause

l The activity that is available receives a create request from CAM.

l The activity cannot acquire the required memory because the memory is not sufficient in thecontroller or continuous memory is not available in the controller.

l This activity transitions from initialization to a failed state.

10.14.3 Solution

1. Controller memory is not available for a new activity. Therefore, wait for the running batchesto complete.

2. Remove the activities that are available in Post-Exec stage.

3. Create a user created activity.

10.15 Failure of synchronizing scheduled parameters duringinitialization

10.15.1 Diagnostic check

An error appears during the synchronization of the following:

l Activity Stage = Failed

l Activity Status = Error

l Activity Status Description = Activity Out of Sync

10.15.2 Cause

When the created activity completes to initialize its data block, it attempts to synchronize itsscheduled parameters with its associated SCM/RCM. This is required because the activity runs at afaster duration than the associated SCM/RCM during the initialization state.

10.15.3 Solution

1. An activity must not run at a faster rate than its associated RCM/SCM.

2. Ensure to maintain minimum gap between the MARACTPERIOD of a CEE and the PhaseExecution period of the RCM/SCM

3. Load both the parameters with the default values of the Phase execution period of anSCM/RCM.

- 191 -

Chapter 10 - Troubleshooting scenarios related to Batch/ProcOps implementation

Page 192: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 10 - Troubleshooting scenarios related to Batch/ProcOps implementation

10.16 Database errors

10.16.1 Diagnostic check

Database errors appear.

10.16.2 Cause

l Inconsistency between the DATA and the X_DATAINIT blocks.

l X_DATAINIT block is missing in an RCM/SCM.

10.16.3 Solution

You must identify the database errors and limit the impact to the system.

You must enhance the ERDB checker to verify the consistency of the ERDB for the followingconditions.

l Identify missing X_DATAINIT blocks : Find all RCMs/SCMs, which must contain a X_DATAINITblock.

l Enumerate all RCMs/SCMs and an SCM/RCM UDTs must match the following conditions.o PARAMINIT=Enabled AND (contains block of type phase with name DATA) AND (does

not contain block of type phase with name X_DATAINIT)

l Identify all X_DATAINIT blocks , which are not required for the current SCM/RCM configuration.

l Enumerate all RCMs/SCM and SCM/RCM UDTs matching the following conditions.o PARAMINIT=Disabled AND (does not contain block of type phase with name DATA) AND

(contains block of type phase with name X_DATAINIT)

l Identify inconsistencies between DATA and X_DATAINIT

l Enumerate all RCMs/SCM and SCM/RCM UDTs matching the following conditions.

ATTENTION

You cannot create and delete X_DATAINIT blocks and the system does not perform asexpected. Hence, consider the following:

l Take a backup of the ERDB.

l Reimport an SCM/RCM from a valid export file.

l If you are using a QVCS, checkout a valid version.

l Perform a pair of opposite changes to delete or create a X_DATAINIT block.

10.17 Child Activity Create Fail

10.17.1 Diagnostic check

If the Phase block is configured to create an activity against a Master Recipe, an error appearsinforming that the parent Phase block reacts in a different way for various errors.

An error message “Child Activity Create Fail” appears with an IR also.

- 192 -

Page 193: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

10.17.2 Cause

If the parent Phase block receives OutofActivities or OutofMemory, it tries to create an activity.However, if another error appears that includes the error of the Phase block, it does not proceed.Therefore, the following error Child Activity Create Fail appears.

10.17.3 Solution

l Ensure to contain enough memory in the controller.

l Ensure to configure an RCM that drives an MR with activities.

l Ensure the CURRNUMACT is less than the TOTALCAPACT.

10.18 CEE does not contain sufficient memory

10.18.1 Diagnostic check

When the number of activities are stored, function block memory for such activities must beavailable. However, due to insufficient CAM internal memory for such allocation there is nochange with the current NUMACT and the current activities. The load fails and the following errormessage CAMs internal Memory was not allocated because the CEE does not have enoughfunction block memory appears.

10.18.2 Cause

Blocks that are loaded consume memory more than the CEE memory.

10.18.3 Solution

Unload blocks from the Monitoring view of the CEE and ensure that the USEDMEMINK is less thanthe TOTALMEMINK.

10.19 Cannot load NUMACT when too many activities are running inCEE

10.19.1 Diagnostic check

CEE consists of X number of activities and you try to load a NUMACT that is less than X, CEE rejectswith an error message informing that too many activities are configured in the CEE. If this errorappears, the load fails with no change to the controller.

An error message Too many running activities in CEE and cannot reduce NUMACT appears.

10.19.2 Cause

When performing Load While Active to load NUMACT, NUMACT is less than current NUMACT incontroller.

10.19.3 Solution

When performing Load While Active to load NUMACT, NUMACT must be greater or equal to currentNUMACT in controller.

- 193 -

Chapter 10 - Troubleshooting scenarios related to Batch/ProcOps implementation

Page 194: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 10 - Troubleshooting scenarios related to Batch/ProcOps implementation

10.20 Cannot start batch due to lack of activity in the controller

10.20.1 Diagnostic check

Due to lack of activity in the controller, batch is in starting state informing that the controller is outof activity.

10.20.2 Cause

Controller is loaded with zero NUMACT or CURRNUMACT and has reached to TOTALCAPACT. Youtry tocreate another activity by starting the new batch.

10.20.3 Solution

l Increase the number of activities and perform a CEE reload when it is active.

l If the number of activities reaches the maximum, the strategy can be re-configured. Thereforethe number of activities required must be within the range of number of activities that areconfigured.

l Wait for the completion of the batch and the activities are available. Therefore, once the activityis available, the diagnostic alarm appears .

10.21 Cannot load NUMACT through Load While Active when thecontroller is in Idle state

10.21.1 Diagnostic check

When you try to load NUMACT that is less than the current value in the controller and thecontroller is in the idle state, the error CodeFbMustBeInactiveOrIdle appears. Hence, the CEE failswith the following error message CEE101: FB Must Be Inactive or CEE Idle.

10.21.2 Cause

Controller is in the Idle state when loading NUMACT through Load While Active.

10.21.3 Solution

Controller must be put into Run state by COLDSTART or WARMSTART.

10.22 Cannot load CEE because of the tagged objects limitation

10.22.1 Diagnostic check

During loading of the CEE, an error appears informing that the load fails with no modification tothe running CEE. and the number of tagged objects that are available. Hence, this is the check forthe available tagged blocks.

10.22.2 Cause

CEE has reached its maximum limitation for the tagged objects.

- 194 -

Page 195: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

10.22.3 Solution

Check for the available number of tagged blocks before you load the CEE.

10.23 Cannot create X_DATAINIT block

10.23.1 Diagnostic check

When you attempt to configure an SCM/RCM to use data initialization, the selected configurationdoes not occur for the given SCM/RCM.

10.23.2 Cause

l RCM/SCM configuration change requires internal generation of a X_DATAINIT block. Howeverthe RCM/SCM contains a block with the name X_DATAINIT.

l RCM/SCM configuration change requires internal generation of a X_DATAINIT block. Howeverthe RCM/SCM exceeds the number of possible component blocks.

10.23.3 Solution

1. Rename the block X_DATAINIT and then perform the operation .

2. Run the ERDB checker to view the situation for the affected SCM/RCM.

3. Reduce the number of component blocks or defragment the SCM/RCM by unassigning andassigning depending on the results of ERDB checker.

10.24 Cannot create child activity due to invalid Phase blockconfiguration

10.24.1 Diagnostic check

There is no notification of any invalid configuration. The Phase block does not attempt to initiate achild activity creation.

10.24.2 Cause

If the Phase block is configured in any of the invalid configuration a child activity does not create.

l Execute on the Equipment = FALSE

l Wait for terminal state = FALSE

l Null Phase block ( EquipName is blank ) and usenameref is false.

l Parent RCM does not have an associated activity.

l Child RCM is in a R400.

10.24.3 Solution

Before you execute the Phase block, ensure to perform the following:

- 195 -

Chapter 10 - Troubleshooting scenarios related to Batch/ProcOps implementation

Page 196: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 10 - Troubleshooting scenarios related to Batch/ProcOps implementation

1. Execute on the Equipment = TRUE

2. Wait for terminal state = TRUE

3. Phase block contains either EQUIPNAME or X_NAMEREF and it must not be NULL.

4. Parent RCM must have an associated activity.

5. Child RCM must not be in prior to R410.

10.25 Cannot create activity when NUMACT is zero

10.25.1 Diagnostic check

You try to create an activity but the CEE does not have any activities (NumAct = 0), which meansthat there is failure when you try to create activity.

10.25.2 Cause

NUMACT equals zero.

10.25.3 Solution

l Change NUMACT to a value larger than zero.

l Re-configure RCMs or do not allow to create activity on this CEE.

l Before you create an activity, assign the CEEs to an RCM with NUMACT > 0 .

10.26 Cannot allocate CAMs internal memory

10.26.1 Diagnostic check

An error appears for the CREATEACTIVITY parameter, which indicates that theCAMs internalmemory is not allocated.

10.26.2 Cause

When you create a new activity from either an RCM or SCM, and the CAMs memory is notallocated.

10.26.3 Solution

Increase the number of activities and try to reload the CEE.

10.27 CAM does not reduce NUMACT

10.27.1 Diagnostic check

Too many running activities cannot reduce NUMACT when you try to reduce the number ofactivities in CEE. CAM does not reduce NUMACT because of too many running activities in CEE.

- 196 -

Page 197: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

10.27.2 Cause

NUMACT is reduced and the CEE is loaded. However, currently there are too many activitiesrunning in the CEE.

10.27.3 Solution

Decrease the number of activities or wait until the CEE uses less activities and reloads. This errorappears when the CEE is in idle state and you start the CEE and run it until the current number ofactivities decreases.

10.28 Cannot allow activity when the controller is in SIMFREEZE

10.28.1 Diagnostic check

Cannot allow activity when the controller is in SIMFREEZE. Therefore, you cannot change thenumber of activity to non-zero because the controller is in SIMFREEZE.

10.28.2 Cause

Loading of CEE or loading while active CEE is issued to a simulation environment with SimState isin SIMFREEZE and the number of activity is configured to something non-zero.

10.28.3 Solution

Reduce the NUMACT to zero and then load values when the operation remains active to the CEEblock.

10.29 Phase block cannot acquire child RCM/SCM in another cluster

10.29.1 Diagnostic check

l You navigate from Parent RCM/SCM and try to determine all the requesters of the child.

l You navigate to parent RCM detail display to find the child SCM/RCM, which stops to respond inACQUIRING state and navigate to detail display Arbitration tab.

10.29.2 Cause

In remote cluster, a child RCM/SCM does not load to a controller. However, in local cluster,EQUIPNAME or X_NAMEREF is blank or incorrect in the Phase block.

10.29.3 Solution

l In remote cluster, load a child RCM/SCM to Monitoring view.

l In local cluster, ensure that the EQUIPNAME or X_NAEREF in Phase block remains same as theproxy name of a child RCM/SCM.

10.30 Child SCM/RCM stops to respond in another cluster

10.30.1 Diagnostic check

Child SCM/RCM stops to respond in another cluster.

- 197 -

Chapter 10 - Troubleshooting scenarios related to Batch/ProcOps implementation

Page 198: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 10 - Troubleshooting scenarios related to Batch/ProcOps implementation

10.30.2 Cause

l A child RCM/SCM does not load in another cluster

l DSA is not configured among clusters.

l Communication loss between the local cluster controller and the remote cluster controller.

10.30.3 Solution

l Check if an RCM/SCM is loaded and activated in another cluster.

l DSA must be configured among clusters.

l In the CEE, Peer Communication tab of local cluster, check that the Initiator and Responderconnections are open.

10.31 Child SCM/RCM stops to respond in another cluster using aMaster Recipe

10.31.1 Diagnostic check

A child SCM/RCM stops to respond in another cluster using a Master Recipe.

10.31.2 Cause

l A child RCM/SCM does not load in another cluster.

l DSA is not configured among clusters.

10.31.3 Solution

l Check if an RCM/SCM is loaded and activated in another cluster.

l DSA must be configured among clusters.

10.32 Child SCM/RCM stops to respond in another cluster usinginstance based activities

10.32.1 Diagnostic check

A Child SCM/RCM stops to respond in another cluster using instance based activities.

10.32.2 Cause

l A Child RCM/SCM does not load in another cluster.

l DSA is not configured among clusters.

10.32.3 Solution

l Ensure to load and activate an RCM/SCM in another cluster.

l DSA must be configured among clusters.

- 198 -

Page 199: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

10.33 Phase block cannot acquire child RCM/SCM using anotherPhase block equipment name

10.33.1 Diagnostic check

Phase block cannot acquire a child RCM/SCM using another Phase block equipment name.

10.33.2 Cause

l Equipment name in Phase block does not match with a Child RCM/SCM name.

l For X_NAMEREF in Phase block, reference given into Unit Instance does not match with a ChildRCM/SCM name.

10.33.3 Solution

l Equipment name in Phase block must match with a Child RCM/SCM name.

l For X_NAMEREF in Phase block, reference given into Unit Instance must match with a ChildRCM/SCM name.

10.34 Cannot enter an RCM arbitration queue when another entityacquires an RCM

10.34.1 Diagnostic check

The Arbitration tab of an RCM displays an error message Unmanaged Conflicts.

When the activity is trying to acquire an RCM, the following message appears.

l Activity Stage = Pre-exec

l Activity Substate = ???

l Activity Status = Info

l Activity Status Description = Acquiring Resource

10.34.2 Cause

The activity tries to execute every cycle to acquire an RCM or enter the arbitration queue.

10.34.3 Solution

In Arbitration tab of an RCM, NUMOWNERS must be less than MAXOWNERS. Else, you must waitfor NUMOWNERS to become less than MAXOWNERS.

10.35 Can enter an RCM arbitration queue when another entityacquires an RCM

10.35.1 Diagnostic check

The Arbitration tab of an RCM indicates the queue order and displays Some Waiting Requests.

When the activity is in an RCM arbitration queue, the following message appears.

- 199 -

Chapter 10 - Troubleshooting scenarios related to Batch/ProcOps implementation

Page 200: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 10 - Troubleshooting scenarios related to Batch/ProcOps implementation

l Activity Stage = Pre-exec

l Activity SubState = ???

l Activity Status = Info

l Activity Status Description = Acquiring Resource

10.35.2 Cause

The activity enters an RCM arbitration queue and the control of an RCM is based on the order ofthe queue that is available. However, it is added in the queue in the order of the requests that arereceived.

10.35.3 Solution

In Arbitration tab of an RCM, NUMOWNERS must be less than MAXOWNERS. Else, you must waitfor NUMOWNERS to become less than MAXOWNERS.

10.36 Failure for user activity creation

10.36.1 Diagnostic check

Cannot create user activity.

10.36.2 Cause

Blocks that are loaded consume memory more than the CEE memory.

10.36.3 Solution

1. Activate the module.

2. Ensure that the SAM service is running.

3. Enter the Batch ID in the ASD for that particular batch.

4. Ensure to select the Automatically Generate Batch ID check box on the Batch Preferences tab.

10.37 Parent RCM hangs and Phase block actively polling forresource RCM/SCM using another Phase blocks Equipmentname

10.37.1 Diagnostic check

The parent RCM hangs in the Phase block and the Phase block’s Equipment name status displaysas Actively polling for resource RCM/SCM.

10.37.2 Cause

Phase block’s Equipment name is blank.

10.37.3 Solution

Re-configure and load the strategy with valid equipment name.

- 200 -

Page 201: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

10.38 Resources not available during load time

10.38.1 Diagnostic check

Resource is not available during load time.

10.38.2 Cause

Unavailability of CEE resources like memory or peer resources.

10.38.3 Solution

Delete the blocks that are not required from the CEE that consumes the resources.

10.39 Cannot start batch due to lack of memory in the controller

10.39.1 Diagnostic check

Cannot start batch due to lack of memory in controller

10.39.2 Cause

Due to unavailability of CEE memory during starting of the activities.

10.39.3 Solution

Delete the blocks that are not required from the CEE.

10.40 Insufficient memory in the middle of a batch

10.40.1 Diagnostic check

Memory is not sufficient in the middle of a batch.

10.40.2 Cause

Unavailability of CEE memory during the execution of activities/CR

10.40.3 Solution

Delete the blocks that are not required from the CEE.

10.41 Child or parent RCM/SCM name is unresolvable

10.41.1 Diagnostic check

Child or parent RCM/SCM name is unresolvable.

10.41.2 Cause

- 201 -

Chapter 10 - Troubleshooting scenarios related to Batch/ProcOps implementation

Page 202: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 10 - Troubleshooting scenarios related to Batch/ProcOps implementation

l Child RCM/RCM block is not configured properly.

l Child RCM/SCM block may not exist in the CEE.

10.41.3 Solution

Load the child RCM/SCM or check the child RCM/SCM configuration, which is driven by the parentblocks.

10.42 Orderly removal of requester

10.42.1 Diagnostic check

Orderly removal of requester.

10.42.2 Cause

This scenario occurs with standalone requesters or RCMs. If an RCM is deleted in a state where itor its Phase-FBs did not release all resources. In this scenario, assume that all CEEs are in RUNstate and all communication between requesters and resources work.

During the removal operation, the requester sends a release request to the resource. The removalis delayed until the resource confirms the release request. If the release request is not confirmed,the removal operation is rejected.

10.42.3 Solution

Force Delete or disorderly remove or damage of requester. For more information, refer to the topicDisorderly removal or unexpected damage of requester

10.43 Requester cannot acquire resource and resource has no queue

10.43.1 Diagnostic check

Requester cannot acquire resource and resource has no queue.

10.43.2 Cause

This scenario occurs frequently on resources without a queue.

10.43.3 Solution

Requester monitors the ownership information of resource.

The requester repeats the request, until the resource is available.

Normally, the resource accepts the request. If the resource cannot be acquired (for example, twoor more requesters are in the same situation), the scenario repeats, until the resource is acquired.

NOTE

This scenario has no adverse effects and recovery occurs completely automatically.

- 202 -

Page 203: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

10.44 Unexpected removal of resource

10.44.1 Diagnostic check

Unexpected removal of resource, for example UCM, SCM, RCM, CM or Master Recipe.

10.44.2 Cause

This scenario occurs, when a resource (for example UCM, SCM, or Master Recipe) is deleted, whilea requester (for example Control Recipe) acquires it.

The requester recognizes the lack of the resource through an existing connection, which resultsin a communication error. Therefore, the requester changes the acquisition state (ACQSTATE)from "ACQUIRED" to "Error." If the requester is a standalone requester no further action occurs. Ifthe requester is an RCM or a Phase-FB, an appropriate error appears with a suitable response (forexample, RCM sets to Held). The response may require some user defined engineering (forexample, Hold-Condition, or some option to be set).

10.44.3 Solution

The requester must provide the resource.

Requester executes a RELEASE command to reset the requester to INITIAL state. For moreinformation refer to the topic Reload of resource after deletion of resource whilerequester.acqstate=error.

10.45 Reload of resource after deletion of resource whilerequester.acqstate=error

10.45.1 Diagnostic check

Reload of resource after deletion of resource while requester.acqstate = error.

10.45.2 Cause

The reload of the resource occurs such that the requesters does not need to be reloaded andconnections between requesters and the resource are re-established in a valid configuration.

This scenario allows a recovery of the requester. The recovery is very rare because it depends onthe user defined configuration and its behavior in time.

10.45.3 Solution

1. The resource reserves fixed time window on activation to accept only acquired re-requests.The initial arbitration requests cannot be accepted during this period.

2. The requester is provided with the already acquired resource prior to its inactivation anopportunity to obtain the ownership again before other requesters acquire the resource.

3. The requester performs an acquisition re-request on the resource after reload of theresource.

If communication cannot be established, the requester remains in acqstate=error.

- 203 -

Chapter 10 - Troubleshooting scenarios related to Batch/ProcOps implementation

Page 204: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

Chapter 10 - Troubleshooting scenarios related to Batch/ProcOps implementation

10.46 Disorderly removal or unexpected damage of requester

10.46.1 Diagnostic check

Disorderly removal or unexpected damage of requester.

10.46.2 Cause

This scenario occurs, if the requester is removed or damaged without the resource being released.

Following are the examples.

l Force-Delete while peer-to-peer communication is interrupted.

l Power-Cycle of Box having the CEE with the requester, while resource is in a different off-nodeCEE.

The resource remains owned by the requester, which represents an inconsistent system state.

10.46.3 Solution

1. Reload the resource to initiate the resource (this may create a ripple effect, ifresource.maxowners > 1 and the resource were owned by multiple requesters, some of themnot deleted).

2. Reload the requester and requester re-acquire the resource. As re-acquisition has no effecton the resource, this restores a consistent system state between the requester and theresource.

3. Set CLRQUEUEOPT=ON (By, default this parameter is ON for all resources except UCM. Hencethis action is required for UCM only) , inactivate and activate the resource.

10.47 Phase block cannot store all formula parameters

10.47.1 Diagnostic check

Phase block cannot store all formula parameters.

10.47.2 Cause

This scenario occurs, if parameter references configured for the Phase block cannot be accessedsince they are removed or a communication problem exists.

10.47.3 Solution

1. Operator changes SCM.MODEATTR=OPERATOR, and performs the necessary parameteradjustments. Operator provide a START command to the SCM (child recipe (RCM or CR)) andchanges SCM.MODEATTR=PROGRAM. Hence, the Phase block automatically resumes controlof the SCM (child recipe (RCM or CR)).

2. Operator must terminate the recipe.

- 204 -

Page 205: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

10.48 Phase block cannot read all report parameters

10.48.1 Diagnostic check

Phase block cannot read all report parameters.

10.48.2 Cause

This scenario occurs, if parameter references configured for the Phase block cannot be accessed,since they are removed or a communication problem exists.

10.48.3 Solution

1. Operator performs manual stores to the report parameters of the Phase block. If a manualstore is performed, the EXECSTS of this parameter is restored. Phase block continues toprocess as soon all “bad” parameters are restored. Note: Standard functionality creates aCHANGE event for all parameter changes to trace operator interventions.

2. Operator changes SCM.MODEATTR=OPERATOR, corrects the situation (for example,correcting cable failures, reloading other controllers, let engineer reload a missing CM),provides a RESET command to the SCM (child recipe (RCM or CR)) and changesSCM.MODEATTR=PROGRAM. Hence, the Phase block automatically resumes control of theSCM (child recipe (RCM or CR)).

NOTE

Solution 1 and 2 can be combined. However, solution 1 cannot be applied afterSolution 2 has been completed.

3. Operator must terminate the recipe.

- 205 -

Chapter 10 - Troubleshooting scenarios related to Batch/ProcOps implementation

Page 206: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

NoticesTrademarks

Experion®, PlantScape®, SafeBrowse®, TotalPlant®, ControlEdge™, and TDC 3000® are registeredtrademarks of Honeywell International, Inc.

OneWireless™ is a trademark of Honeywell International Sàrl

Other trademarksMicrosoft and SQL Server are either registered trademarks or trademarks of Microsoft Corporationin the United States and/or other countries.

Trademarks that appear in this document are used only to the benefit of the trademark owner,with no intention of trademark infringement.

Third-party licensesThis product may contain or be derived from materials, including software, of third parties. Thethird party materials may be subject to licenses, notices, restrictions and obligations imposed bythe licensor. The licenses, notices, restrictions and obligations, if any, may be found in thematerials accompanying the product, in the documents or files accompanying such third partymaterials, in a file named third_party_licenses on the media containing the product, or athttp://www.honeywell.com/ps/thirdpartylicenses.

Documentation feedbackYou can find the most up-to-date documents on the Honeywell Process Solutions support websiteat:

l http://www.honeywellprocess.com/support

If you have comments about Honeywell Process Solutions documentation, send your feedback to:

l [email protected]

Use this email address to provide feedback, or to report errors and omissions in thedocumentation. For immediate help with a technical problem, contact your local HoneywellProcess Solutions Customer Contact Center (CCC) or Honeywell Technical Assistance Center(TAC).

How to report a security vulnerabilityFor the purpose of submission, a security vulnerability is defined as a software defect or weaknessthat can be exploited to reduce the operational or security capabilities of the software.

Honeywell investigates all reports of security vulnerabilities affecting Honeywell products andservices.

To report a potential security vulnerability against any Honeywell product, please follow theinstructions at:

https://honeywell.com/pages/vulnerabilityreporting.aspx

Submit the requested information to Honeywell using one of the following methods:

l Send an email to [email protected].

or

l Contact your local Honeywell Process Solutions Customer Contact Center (CCC) or HoneywellTechnical Assistance Center (TAC) listed in the “Support” section of this document.

- 206 -

Page 207: Batch Implementation Guide EPDOC-X161-en-501A · 2018. 2. 24. · Contents 3 Chapter1-AboutThisGuide 14 1.1Revisionhistory 14 1.2Basicconceptsandterms 14 Chapter2-ConfigureBatchPreferences

SupportFor support, contact your local Honeywell Process Solutions Customer Contact Center (CCC). Tofind your local CCC visit the website, https://www.honeywellprocess.com/en-US/contact-us/customer-support-contacts/Pages/default.aspx.

Training classesHoneywell holds technical training classes about Experion PKS. These classes are taught byexperts in the field of process control systems. For more information about these classes, contactyour Honeywell representative, or see http://www.automationcollege.com.

- 207 -