358
33003669.13 www.schneider-electric.com Unity Application Generator (UAG) 3.3 SP4 33003669 09/2014 Unity Application Generator (UAG) 3.3 SP4 a SoCollaborative software Extended User Manual 09/2014

Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

  • Upload
    others

  • View
    15

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Unity Application Generator (UAG) 3.3 SP4

33003669 09/2014

3300

3669

.13

www.schneider-electric.com

Unity Application Generator (UAG) 3.3 SP4a SoCollaborative softwareExtended User Manual

09/2014

Page 2: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

The information provided in this documentation contains general descriptions and/or technical characteristics of the performance of the products contained herein. This documentation is not intended as a substitute for and is not to be used for determining suitability or reliability of these products for specific user applications. It is the duty of any such user or integrator to perform the appropriate and complete risk analysis, evaluation and testing of the products with respect to the relevant specific application or use thereof. Neither Schneider Electric nor any of its affiliates or subsidiaries shall be responsible or liable for misuse of the information contained herein. If you have any suggestions for improvements or amendments or have found errors in this publication, please notify us.

No part of this document may be reproduced in any form or by any means, electronic or mechanical, including photocopying, without express written permission of Schneider Electric.

All pertinent state, regional, and local safety regulations must be observed when installing and using this product. For reasons of safety and to help ensure compliance with documented system data, only the manufacturer should perform repairs to components.

When devices are used for applications with technical safety requirements, the relevant instructions must be followed.

Failure to use Schneider Electric software or approved software with our hardware products may result in injury, harm, or improper operating results.

Failure to observe this information can result in injury or equipment damage.

© 2014 Schneider Electric. All rights reserved.

2 33003669 09/2014

Page 3: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Table of Contents

Safety Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9About the Book. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

Chapter 1 General Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13General Safety Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

Chapter 2 Supported HMIs and their Setup. . . . . . . . . . . . . . . . . . 152.1 Vijeo Citect and Unity Application Generator . . . . . . . . . . . . . . . . . . . 16

Generator Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17Handling Existing Projects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29Variable Generation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31Generation of PLC-Data Server Channel . . . . . . . . . . . . . . . . . . . . . . 35Alarm Configuration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36Communication Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43Page Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

2.2 Monitor Pro and Unity Application Generator . . . . . . . . . . . . . . . . . . . 48Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49Monitor Pro - Default Server Application . . . . . . . . . . . . . . . . . . . . . . . 50Generation Modes of Monitor Pro Server Application . . . . . . . . . . . . . 53Data Conversion Monitor Pro vs. Unity Application Generator . . . . . . 54Monitor Pro Drivers and Communication. . . . . . . . . . . . . . . . . . . . . . . 58Alarming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61Archiving . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65Monitor Pro Client Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

2.3 iFIX and Unity Application Generator . . . . . . . . . . . . . . . . . . . . . . . . . 76Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77How to Configure iFIX for the Use with Unity Application Generator . 78Manual Configurations Before Generation for iFIX . . . . . . . . . . . . . . . 79How to Generate a New iFIX Application . . . . . . . . . . . . . . . . . . . . . . 82How to Generate an iFIX Application Incrementally . . . . . . . . . . . . . . 83Unity Application Generator and iFIX Drivers . . . . . . . . . . . . . . . . . . . 84How to Deploy the Generated Application to the iFIX Nodes . . . . . . . 85How to Run an Existing Unity Application Generator Project . . . . . . . 86Configuring iFIX Redundancy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

2.4 Generic HMI and Unity Application Generator . . . . . . . . . . . . . . . . . . 88Using Unity Application Generator with a Generic HMI. . . . . . . . . . . . 88

33003669 09/2014 3

Page 4: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Chapter 3 UAG Memory Mapper. . . . . . . . . . . . . . . . . . . . . . . . . . . 89Memory Mapper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

Chapter 4 Customization and Project Maintenance . . . . . . . . . . . 974.1 Customizing Unity Application Generator . . . . . . . . . . . . . . . . . . . . . . 98

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99Working with the Customization Editor . . . . . . . . . . . . . . . . . . . . . . . . 100The Customization Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102Defining the Physical Model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107Defining Naming Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113Defining Name Creation Rules. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115Defining Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122Defining an Archive Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125Defining PLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127User Defined Modules - Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131How to Define a Generic Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133Add User Defined Module - Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . 135How to Change the Customization. . . . . . . . . . . . . . . . . . . . . . . . . . . . 142

4.2 Fieldbus Dialogs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143Customization Editor Extensions for Fieldbuses . . . . . . . . . . . . . . . . . 144Representation of Data for Profibus. . . . . . . . . . . . . . . . . . . . . . . . . . . 146Actions for Fieldbus Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148I/O Map Dialog Box Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150I/O Map Additional Dialog Boxes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152

4.3 Project Maintenance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154Setting Options for Analysis and Generation . . . . . . . . . . . . . . . . . . . . 155Version Management and Change Tracking . . . . . . . . . . . . . . . . . . . . 156Project Documentation (Report Generator) . . . . . . . . . . . . . . . . . . . . . 159Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160

Chapter 5 Template Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1615.1 General Information on Template Libraries . . . . . . . . . . . . . . . . . . . . . 162

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1625.2 Template Library Creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164

Template Library Creation in Customization Editor . . . . . . . . . . . . . . . 165Template Library Creation in UAG . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170

5.3 Libraries Tree of UAG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172General Information on Libraries Tree of UAG . . . . . . . . . . . . . . . . . . 173Template Library Node. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174Template Type Node . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179

4 33003669 09/2014

Page 5: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

5.4 Template Type Creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181General Information on Template Type Creation . . . . . . . . . . . . . . . . 182Creating a New Template Type. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183Associating a Picture Template or HMI Symbol to Template Type . . . 184Adding Control Modules to a Template Type . . . . . . . . . . . . . . . . . . . 185Adding Properties to a Template Type . . . . . . . . . . . . . . . . . . . . . . . . 188Adding Free Variables, Links and Interlocks to a Template Type . . . . 195Naming Convention and Name Creation Rules for Template Type . . 196Creating a Template Type from a Functional Physical Element . . . . . 197Creating a Template Type from an Existing Template Type . . . . . . . . 199Importing Template Types. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200

5.5 Template Type Instantiation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201General Information on Template Type Instantiation . . . . . . . . . . . . . 202Naming Convention and Name Creation Rules for Template Type Instances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204Creating Template Type Instances with Context Menu. . . . . . . . . . . . 207Creating Template Type Instances by Drag-and-Drop . . . . . . . . . . . . 210Viewing Template Type Instances. . . . . . . . . . . . . . . . . . . . . . . . . . . . 211

5.6 Template Type Modification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212General Information on Template Type Modification. . . . . . . . . . . . . . 213Modification of Basic Template Type Details. . . . . . . . . . . . . . . . . . . . 214Creation/ Modification/ Deletion of Control Modules . . . . . . . . . . . . . . 215Creation/ Modification/ Deletion of Other Template Type Details . . . . 216Saving Template Type Modifications. . . . . . . . . . . . . . . . . . . . . . . . . . 220Propagating Template Type Modifications . . . . . . . . . . . . . . . . . . . . . 221

5.7 Template Instance Modification. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225General Information on Template Type Instance Modification . . . . . . 226Modifications Allowed for Template Type Instances . . . . . . . . . . . . . . 227Modifications Not Allowed for Template Type Instances. . . . . . . . . . . 228Modifying Control Module Names for Template Type Instances. . . . . 229Disconnecting Template Type Instances. . . . . . . . . . . . . . . . . . . . . . . 230

Chapter 6 SCoD Variable Value Propagation . . . . . . . . . . . . . . . . 233. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233

Appendices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235Appendix A Generated Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237

A.1 Overview of Generated Code and Generation Principles . . . . . . . . . . 238Overview of Generated Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238

33003669 09/2014 5

Page 6: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

A.2 Generation for Unity Pro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240What is generated? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241Generation from General Project Settings - Overview . . . . . . . . . . . . . 243Generation from the Topological Model - Overview. . . . . . . . . . . . . . . 244Generation from the Physical Model - Overview . . . . . . . . . . . . . . . . . 249Generated PLC Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254Generated Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255Generated Operator Screens. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257Generated Animation Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258Generated Code: Functional Physical Elements, Control Modules and Interlocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259Generated Code: Communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262Generated Code: Initialization (Quantum only) . . . . . . . . . . . . . . . . . . 265Generated Code: Scaling of Analog Values (Quantum only). . . . . . . . 266Generated Code: Discrete Configuration (Premium + M340 only). . . . 267

A.3 Generation for Vijeo Citect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270Generated Variables and their Graphical Representation in the HMI . 271Generated Pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273Generated Vijeo Citect Database Objects . . . . . . . . . . . . . . . . . . . . . . 274Generated Vijeo Citect Pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280

A.4 Generation for Monitor Pro. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284Generated Variables and their Graphical Representation in the HMI . 285Generated Screens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287Generated Monitor Pro Database Objects . . . . . . . . . . . . . . . . . . . . . . 288Generated Monitor Pro Pictures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292

A.5 Generation for iFIX. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296Characterization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297Generated Variables and their Graphical Representation in the HMI . 298Generated Screens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300Generated iFIX Database Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301Generated iFIX Pictures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306Generated iFIX Driver Configuration from Unity Application Generator Point of View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311Generated iFIX Driver Configuration from the Driver Point of View . . . 313

A.6 Generation for a Generic HMI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315Generation for a Generic HMI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315

6 33003669 09/2014

Page 7: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

A.7 Generation for Net Partners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317Generation for Net Partners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318Net Partner Variables: CSV File Format . . . . . . . . . . . . . . . . . . . . . . . 319

Appendix B Format of the XML File for Generic HMI . . . . . . . . . . . . 321XML File Format for Generic HMI . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321

Appendix C Synchronization of Projects . . . . . . . . . . . . . . . . . . . . . 339Synchronization with Timestamp.exe . . . . . . . . . . . . . . . . . . . . . . . . . 339

Appendix D Additional Information . . . . . . . . . . . . . . . . . . . . . . . . . . 341Commandline Arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341

Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351

33003669 09/2014 7

Page 8: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

8 33003669 09/2014

Page 9: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Safety Information

Important Information

NOTICE

Read these instructions carefully, and look at the equipment to become familiar with the device before trying to install, operate, or maintain it. The following special messages may appear throughout this documentation or on the equipment to warn of potential hazards or to call attention to information that clarifies or simplifies a procedure.

33003669 09/2014 9

Page 10: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

PLEASE NOTE

Electrical equipment should be installed, operated, serviced, and maintained only by qualified personnel. No responsibility is assumed by Schneider Electric for any consequences arising out of the use of this material.

A qualified person is one who has skills and knowledge related to the construction and operation of electrical equipment and its installation, and has received safety training to recognize and avoid the hazards involved.

10 33003669 09/2014

Page 11: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

About the Book

At a Glance

Document Scope

This manual is to give you a clear roadmap how to create an application with UAG. to give reference to all elements of UAG.

It is not the intention of the manual to let you understand what Unity Application Generator (UAG) is and what it can do for you. You

will find this in the Basics Manual of UAG. to get an overview of the functionality of UAG. You will find this in the Basics Manual of UAG. to explain all elements which are used to build an application. You will find this in the Basics

Manual of UAG. to give a reference to all menus and dialogs of Unity Application Generator. You will find this in

the Help of the software.

Validity Note

This manual is valid for Unity Application Generator (UAG) 3.3 SP4 in conjunction with: Schneider Electric Unity Pro 4.1, 5.0, 6.0, 7.0, 8.0, and 8.1 Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for new features of UAG 3.2 or later) Schneider Electric Monitor Pro 7.6 (not supported for new features of UAG 3.2 or later) Intellution iFIX 3.5 + 4.0 incl. MBT driver V7.156k for iFIX from Dimension Software Inc. (not

supported for new features of UAG 3.2 or later) Schneider Electric Advantys Configuration Software 4.7, 5.0, 5.5, 7.0, and 8.0 Prosoft Configuration Builder 4.0.0.0/4.1.0.0/4.1.1.1/4.1.2.3 (provided on your UAG installation

DVD) Hilscher Sycon 2.10

Related Documents

Title of Documentation Reference Number

SCoD Library IATBASIC10; refer to separate Word documents provided for each SCoD in the DOC subdirectory of the Unity Application Generator directory

-

Unity Application Generator 3.3 SP4 Basic User Manual 33002830

SCoD Editor 3.3 SP4 User Manual 33002608

Unity Application Generator (UAG) ArchestrA Generator User Manual

33004144

33003669 09/2014 11

Page 12: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

You can download these technical publications and other technical information from our website at www.schneider-electric.com.

Product Related Information

Unity Pro Software Reference Manual 35006144

Quantum Hot Standby with Unity Pro User Manual 35010533

Premium Hot Standby with Unity Pro User Manual 35012068

D. W. Fleming, V. Pillai: S88 Implementation Guide McGraw Hill, ISBN 0-07-021697-5

Title of Documentation Reference Number

WARNINGUNINTENDED EQUIPMENT OPERATION

The application of this product requires expertise in the design and programming of control systems. Only persons with such expertise should be allowed to program, install, alter and apply this product.

Failure to follow these instructions can result in death, serious injury, or equipment damage.

12 33003669 09/2014

Page 13: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Unity Application Generator (UAG) 3.3 SP4

General Information

33003669 09/2014

General Information

Chapter 1General Information

General Safety Information

WARNINGUNINTENDED EQUIPMENT OPERATION

Test and verify the operation of applications before release.

Perform safety analysis and tests appropriate to the application. This software package provides a means to quickly design an application. System programming and interlocks are required to make sure the safety of the resulting applications.

Any applicable regulatory requirements must be met before releasing an application for general use.

Failure to follow these instructions can result in death, serious injury, or equipment damage.

WARNINGLOSS OF CONTROL

The designer of any control scheme must consider the potential detected failure modes of control paths and, for certain critical control functions, provide a means to achieve a safe state during and after a detected failure in the path. Examples of critical control functions are emergency stop and overtravel stop.

Separate or redundant control paths must be provided for critical control functions.

System control paths may include communication links. Consideration must be given to the implications of unanticipated transmission delays or detected failures of the link.

Each application must be individually and thoroughly tested for proper operation before being placed into service.

Failure to follow these instructions can result in death, serious injury, or equipment damage.

33003669 09/2014 13

Page 14: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

General Information

CAUTIONUNPREDICTABLE APPLICATION

Do not use a tool such as Unity Pro to edit segments of the application generated by UAG. For communications links and properties to be correctly maintained, any changes to these segments must be made within the UAG environment.

Failure to follow these instructions can result in injury or equipment damage.

14 33003669 09/2014

Page 15: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Unity Application Generator (UAG) 3.3 SP4

Supported HMIs

33003669 09/2014

Supported HMIs and their Setup

Chapter 2Supported HMIs and their Setup

Introduction

Unity Application Generator is able to generate tags and graphics for Vijeo Citect, Monitor Pro or Intellution´s iFIX or to create a XML file with tag information that may be used by any HMI (generic HMI).

This chapter gives you overview information about the specific combination HMI - Unity Application Generator and some specific instructions for the correct configuration of the HMI.

What Is in This Chapter?

This chapter contains the following sections:

Section Topic Page

2.1 Vijeo Citect and Unity Application Generator 16

2.2 Monitor Pro and Unity Application Generator 48

2.3 iFIX and Unity Application Generator 76

2.4 Generic HMI and Unity Application Generator 88

33003669 09/2014 15

Page 16: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Vijeo Citect and Unity Application Generator

Section 2.1Vijeo Citect and Unity Application Generator

Introduction

In order to generate Vijeo Citect configuration, Vijeo Citect needs to be installed on the same computer as the Unity Application Generator.

The Vijeo Citect generator is both a "Full Generator" and an "Incremental Generator".

Normally, a full generation occurs only the first time that a project is generated.

Subsequent changes in the UAG project are then applied incrementally to the existing Vijeo Citect project when a generation request is made.

It is possible to force a full generation instead of an incremental one.

This will result in losing any changes made by hand to the Vijeo Citect configuration between generation passes.

The generator automatically backs up existing projects as a part of full generation (see Project Generation, page 26).

What Is in This Section?

This section contains the following topics:

Topic Page

Generator Setup 17

Handling Existing Projects 29

Variable Generation 31

Generation of PLC-Data Server Channel 35

Alarm Configuration 36

Communication Configuration 43

Page Generation 46

16 33003669 09/2014

Page 17: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Generator Setup

Introduction

This section describes the generator setup with the new Vijeo Citect generator.

When you create a project in UAG Customization editor, a Supported HMI dialog box is displayed.

If you want to create a project with a new Vijeo Citect generator, select the Vijeo Citect check box and click OK.

When you select Vijeo Citect check box, you will be able generate UAG data server and HMI as separate Vijeo Citect project. This gives you the flexibility to generate and compile the data server and HMI project(s) independently. For more details, refer to Structure of Generated Vijeo Citect Projects (see page 22).

When you select Vijeo Citect (Legacy Gen.), you will be able to generate UAG data server and HMI as one Vijeo Citect project. For more details, refer to Handling Existing Projects (see page 29).

Generation can be performed either completely new or incrementally and this will affect all Vijeo Citect projects in the same manner, i.e. for new generation all Vijeo Citect projects will be created from scratch while for incremental generation the projects will be modified by the generator as necessary.

Generator Parameters

Setting up for generation requires specifying values for generator parameters both in UAG Customization editor (select General → Vijeo Citect in the tree view) and in the UAG project (select View → Options menu and click on Vijeo Citect tab).

33003669 09/2014 17

Page 18: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Generator Parameters in Customization

Parameter Description

Multiple I/O-Devices per PLC

If True, every UAG Communication Frame gets its own I/O-Device, per default named as the frame.Additionally, you can join several frames into one customer named device by editing their extended properties.Communication Frames using the same name will be combined into a single I/O device.

New Base Project’s CTZ file Specifies a backed up Vijeo Citect project file to be used as the template for creating new Vijeo Citect projects.The default value is an empty project shipped as a part of the Vijeo Citect generator. Please refer to Project Generation (see page 26).You can enter the file name using a system environment variable or an environment variable matching one of the paths defined in Customization Editor, e.g. as %ProgramFiles%\Schneider Electric\Unity Application Generator\TemplateProject.7.10.ctz.For details please refer to The Customization Options (see page 102).

New Page Preconditions Bundles the following properties in a dialog.Please also refer to Page Generation (see page 46).

New Page Template Project

project that contains the template to use for creating new pages

New Page Template Style

style of the template to use for creating new pages

New Page Template Name

name of the template to use for creating new pages

New Page Resolution used resolution for new pages

New Page is linked to template

whether new page is linked to template

New Page has a title bar whether new page is created with title bar

Margins (Left, Right, Top, Bottom)

specifies the margins of the pages that will be excluded from genie placement

Genie placement specifies whether genies will be placed at a fixed position in the top left corner or cascaded

18 33003669 09/2014

Page 19: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

After that, it may be necessary to set up Vijeo Citect properties in the UAG Project (see below).

OPC Access Path configuration

specifies how OPC access paths will be generated in case of property Use OPC Server is set to true as variable name prefix:

The PLC name as an alias of the OPC access path will be prefixed to the variable name in the tag’s address field (example: plc1!em1_cm1_var1).

manually:The prefix is omitted and you have to manually configure the OPC access path in the citect.ini file for each I/O device (in the section [OPCAccessPaths] in the form of <IOServerName>.<IODeviceName>=<OPCAccessPath>; see the Driver reference manual of VijeoCitect).

Page Menu Configuration Bundles the following properties in a dialog.

Page Menu specifies for which project a menu is generatedPossible values: for each Page Project for Main Project only for Page and Main Project

For more details, refer Page Projects and Main Project (see page 23).

Menu Position specifies the position in the menu bar of the Vijeo Citect application where the menu of the generated pages will appear at runtimePlease also refer to Page Generation (see page 46).

Publish Alarm Properties sets Alarm Servers ’Publish Alarm Properties’

Suppress _1 suffix for BOOL alarms

If true, the suffix _1 usually appended to the tag names to create the digital alarm tags will be suppressed.

Symbol Library Project One or more library project can be entered, and the associated genies are used during the page creation. Comma (,) has to be used as a seperator between the library projects, for example, DPLibrary1p2, UAGBasic, and so on.

NOTE: Vijeo Citect restricts the maximum length of symbol library name to 31 characters.

For more details, refer to Page Generation (see page 46).

Use OPC Server If true, configure Vijeo Citect to connect to an OPC server for the communications with PLCs.If false, configure Vijeo Citect to communicate directly with PLCs.

Parameter Description

33003669 09/2014 19

Page 20: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Generator Parameters in Project

Parameter Description

Always Link If a PLC_HMI variable does not have an address, this parameter defines what the generator behavior has to be. The default value, of true, will result in the creation of the variable in Vijeo Citect which will not compile.A diagnostic message is printed in the generator output window.If false, then a Vijeo Citect disk device is created so that the Vijeo Citect project will compile.

Base Project Name name of the base projectThe default value is Base.(Not available for legacy Vijeo Citect Generator).

Append HMI Project Name in LoadPreSets

The default value is False.When the user generates Vijeo Citect legacy, by default, the Cicode function name will be generated as LoadPreSets().If the value of Append HMI Project Name in LoadPreSets is changed from False to True or vice versa, then the following message appears: All UAG supported libraries will not adopt this change and user has to manually modify in all the places.Cicode function name will be generated as LoadPresets_HMIProjectName().If you change the property value from the previous setting, then you have to perform a full generation by selecting Generate completely new (only next generation) check box in Vijeo Citect tab to get the appropriate function name.If you create a new HMI variable after changing the property value, then you will be able to get the appropriate function name by performing incremental generation.(Available only for legacy Vijeo Citect Generator.)

Citect.ini File Path location of the Citect.ini fileThe default value is the Windows root directory.Beginning with Version 3.1, this is required to be a qualified path to the Citect.ini in use. The previous Vijeo Citect Path and Vijeo Citect User Path parameters are now read from the Citect.ini file.You can enter the file name using a system environment variable or an environment variable matching one of the paths defined in Customization Editor, e.g. as %CITECT_CONFIG%\citect.ini. For details please refer to The Customization Options (see page 102).

Localize Strings If true, tag comments and indicated alarm’s descriptions will be marked for language change in Vijeo Citect, that is, these text strings will be enclosed in "@ (" and ")".

Main Project Name name of the main projectIf no name is specified the main project will not be created.The default value is an empty string (no main project).(Not available for legacy Vijeo Citect Generator).

20 33003669 09/2014

Page 21: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Edition of these properties is optional.

Manual Steps Before Generation

Setting Up HMI Generation

Prior to generation restore the Vijeo Citect project that contains the genie libraries that support page generation.

In the case that you are using a pre-built SCoD library, this project has to have been shipped at the same time as the SCoD library.

In the case that you are working with your own SCoDs, you will need to create a genie library project to support symbol generation as defined in Creating Vijeo Citect Compatible SCoDs.

In either case you will want to name your library project in the customization editor prior to generation. Please also refer to Page Generation (see page 46).

Optional Setup of Page Template

You may also choose a new page template to use as a starting point for generated pages. Setup of this feature may require you to restore the project with the new page template you wish to use in it. Please also refer to Page Generation (see page 46).

Post Build Activities activities to be performed after the Vijeo Citect projects have been generatedPossible values: None Pack (packs the Vijeo Citect project) Pack and Compile (packs and compiles the Vijeo Citect project) Pack, Compile, and Log Errors (packs and compiles the Vijeo Citect

project and displays the messages issued by the Vijeo Citect compiler in the UAG message window)

Project Path location to generate the projects toThe MASTER.DBF remains in the location specified by the Citect.ini. A project will be located in a subfolder (name is same as project name) to this property and be linked from the MASTER.DBF. This is not necessarily the Vijeo Citect User Path.You can enter the path name using a system environment variable or an environment variable matching one of the paths defined in Customization Editor, e.g. as %PROJECTDIR%\HMI. For details please refer to The Customization Options (see page 102).You will be able to change the location of the Citect project path. On changing the project path, Citect project (if any) will be copied to the changed path.

Use Long Project Names If true, Vijeo Citect project names are prefixed by the <UAG Project Name>, separated by an underscore character.The default value is false.

Verbose Output If true, additional messages are displayed in the generator output window.

Visible If true, Vijeo Citect Explorer will be visible during generation.The default value is true.

Parameter Description

33003669 09/2014 21

Page 22: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Structure of Generated Vijeo Citect Projects

The following structure of Vijeo Citect projects generated by UAG helps to modularize the projects for better handling within Vijeo Citect, e.g. for testing or using the HMI projects separately.

The structure is based on functionality in Vijeo Citect (pages vs. tags and communication) as well as in UAG (HMI vs. data server).

22 33003669 09/2014

Page 23: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Tag Projects and Base Project

The generator handles generation of UAG variables (of connection type PLC_HMI and HMI) and their communication by creating and maintaining the base project and the tag projects.

There will be one tag project per UAG data server (DS), containing only those variable tags, trend tags and alarm tags that correspond to UAG variables related to the specific data server.

This relation is determined by the generator by checking which PLCs are connected via communication channels to that data server and by checking which parent objects of variables are assigned to those PLCs.

In addition, the Vijeo Citect I/O server and I/O devices (with their port and board definitions) that correspond to the UAG data server and the connected PLCs, respectively, is also generated in the data server’s tag project.

There will be 1 base project shared between all tag projects generated for the UAG project.

This base project contains the definitions of the Vijeo Citect alarm, trend and report servers as well as the alarm categories and system definitions (i.e. Vijeo Citect labels and groups).

In addition, the cluster names and network addresses will be defined in the base project.

The base project will be created from the Vijeo Citect template project specified in UAG Customization editor.

This template project may already contain other data entered by you, but it is your responsibility to avoid conflicts with data added by UAG.

Page Projects and Main Project

The generator handles generation of HMI symbols and pictures of UAG by creating and maintaining the page projects.

There will be 1 page project per UAG HMI and it will contain the pages corresponding to the UAG pictures of that specific HMI object.

The pages contain the genie instances according to the definition provided in UAG’s physical model objects (physical elements, control modules and variables).

The necessary symbol library projects will be added as include references to the base project and the page projects will contain include references to the tag projects.

In addition, the generator creates and modifies the main project that will contain the include references to the page projects.

Creating the main project is optional. If a name is specified in the according generator property then the main project will be created, otherwise it will be omitted.

33003669 09/2014 23

Page 24: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

In the Customization Editor, you can create a page menu by clicking any of the following options in the Page Menu Configuration dialog box: for each Page Project

Menus will be generated to each HMI project and will not be generated to main project. for Main Project only

Menus will be generated only to main project, and will not be generated to individual HMI projects.

for Page and Main ProjectMenus will be generated to main project and also to individual HMI project.

The last modified HMI project will be displayed in Vijeo Citect. This HMI project will occupy the position mentioned in the Page Menu Start Position configured in the Page Menu Configuration dialog box.

Nested Picture Groups and Pictures will be generated to Vijeo Citect project during full generation/incremental generation of HMI.

If a Nested Picture Group is created under HMI, then page will be displayed under HMI menu during run time in Vijeo Citect as shown in the following figure.

Irrespective of nested levels, the last Picture Group will be displayed along with its pictures.

When you create a new project, by default, for each Page Project will be selected in the Customization Editor. After generating the HMI project, if you modify the options available in Page Menu Configuration dialog box, then you have to perform full generation. This can be done by selecting Generate completely new (only next generation) check box in Vijeo Citect tab of Options dialog box in UAG.

24 33003669 09/2014

Page 25: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Example

The following example helps to understand which Vijeo Citect projects will be created from a given UAG project.

Assumed there is a UAG project called TestNew stored in a folder TestNewProject on the hard disk.

The UAG project contains 2 Data Servers called ds1 and ds2 and 2 HMIs called hmi1 and hmi2.

Furthermore the following property values are set via UAG → Options → Vijeo Citect.

The Project Path property is set to the folder named HMI, which is a sub-folder of the UAG project folder.

The value for Use Long Project Names is set to True so the Vijeo Citect project names will be prefixed with the name of the UAG project.

After generation has been performed, the names of the resulting Vijeo Citect projects created by the new Vijeo Citect generator for the given example will be displayed in Vijeo Citect Explorer like shown in the list below: TestNew_Base TestNew_ds1 TestNew_ds2 TestNew_hmi1 TestNew_hmi2 TestNew_Main

And finally, the project folders created on the hard disk for this example will be:

TestNewProject HMI TestNew_Base TestNew_ds1 TestNew_ds2 TestNew_hmi1 TestNew_hmi2 TestNew_Main

Property Value

Base Project Name Base

Citect.ini File %CITECT_CONFIG%\citect.ini

Localize Strings False

Main Project Name Main

Post Build Activities Pack

Project Path %PROJECTDIR%\HMI

Use Long Project Name True

33003669 09/2014 25

Page 26: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Project Generation

In the event that a Vijeo Citect project already exists, and a full generation is requested, the existing project is backed up and a new project is generated in its place.

The location of the backed up project is named in the generation log.

Once a project is generated it can be accessed, compiled, and deployed through the Vijeo Citect project explorer.

Generation of a Particular Data Server Project

You are able to start the generation only for a particular data server project from the context menu for the corresponding object in the Topological Model tree of UAG.

You will be able to perform only incremental generation from the context menu for the dataserver project. Incrementally Generate Data Server will be unavailable if you select Generate completely new (only next generation) check box in Vijeo Citect tab of Options dialog box in UAG.

During a generation started via context menu, only one tag will be modified or created from scratch, according to the generation mode and the selected object in UAG. The other tag will not be modified.

This might lead to an inconsistency in the whole set of generated projects if the change made in UAG requires updating multiple tag.

For example, if a control module has been moved from one equipment module to another, then this change could affect 2 tag projects if source and target of the movement are related to 2 different data servers.

If this is the case and you generate only the target data server for example, then the corresponding tags will be added to the second tag project, but they still exist as well in the first tag project.

Such inconsistencies can be removed either by generating all data servers individually from the context menu or by clicking Generate → HMI on the tool bar to generate all data servers and HMIs.

26 33003669 09/2014

Page 27: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Regardless whether a generation has been started for a data server object, the Vijeo Citect base or main projects will be updated if necessary.

That means also that in this single generation mode the base and main projects will not be created from scratch if they exist already - even if a completely new generation has been started.

If they do not exist (because it is a first time generation) they will be created (according to the generator settings).

Manual Steps After Generation

Follow these steps after project generation:

Restriction for HMI Generation

Vijeo Citect 7.20

Vijeo Citect 7.20, 7.30, 7.40, and 7.40 SP1 experiences a very slow startup on certain machines; it creates a performance issue of generation from UAG to Vijeo Citect 7.20, 7.30, 7.40, and 7.40 SP1. UAG is compatible with Vijeo Citect 7.20, 7.30, 7.40, and 7.40 SP1 and can generate HMI only if you perform the following steps:

After installing Vijeo Citect 7.20, 7.30, 7.40, and 7.40 SP1, you have to launch Vijeo Citect Explorer once and upgrade all the old projects before doing any HMI generation (full/ incremental) from UAG.

Step Action

1 Setup the invocation of a function on startup to set HMI variables to their initial states. Please refer to HMI Variable Address Generation (see page 44).

2 Setup users and assign areas to them for alarm coverage. Please refer to Alarm Area Generation (see page 39).

3 Set the project ID of each project in Vijeo Citect unique before compiling.

4 Pack and compile each project created in Vijeo Citect (if not already done by the generator according to the settings of the Post Build Activities parameter).

NOTE: If a diagnostic message of the form ´master.dbf is not valid´ appears during a pack operation, it is necessary to re-start the Vijeo Citect explorer before performing the pack operation again.

5 If you have set the generator to use an OPC server, you will need to configure the OPC Server itself.

Step Action

1 Click Start → Control Panel.

2 Double-Click Internet Options.

3 Click the Advanced tab.

4 Under Security, uncheck the Check for publisher’s certificate revocation option.

33003669 09/2014 27

Page 28: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

For all newly generated UAG projects into Vijeo Citect, a diagnostic message, No User has been defined for this project. At least one user must be defined is shown during Vijeo Citect compilation. UAG will not generate any user or roles for the projects. You have to manually define the roles and users in Vijeo Citect.

If the user configures more than 15 PLCs in a project after generating the project from UAG , Vijeo Citect displays a Warning message for IO address while compling the project.

28 33003669 09/2014

Page 29: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Handling Existing Projects

Introduction

With existing projects you have the choice to continue working with your projects in the old way of generation with the legacy Vijeo Citect Generator.

The new Vijeo Citect Generator is completely independent of the legacy one.

The 2 versions of the Vijeo Citect Generator are installed side-by-side during setup of UAG.

When you create a project in UAG Customization editor, a Supported HMI dialog box is displayed.

If you want to create a legacy project, select the Vijeo Citect (Legacy Gen.) check box and click OK.

You can choose in UAG Customization editor which generator to use.

HMI Type Name Change Detection

The HMI type name displayed for the legacy Vijeo Citect Generator has been changed from VijeoCitect to Vijeo Citect (Legacy Gen.).

This name change will be detected while opening an old project and you are asked to update the customization file using UAG Customization editor prior to opening the project.

33003669 09/2014 29

Page 30: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Switching from Legacy to New Vijeo Citect Generator

In the UAG Customization editor you are notified that the settings for the legacy Vijeo Citect generator have been updated.

If you wish to do so, you can switch the project from the legacy to the new Vijeo Citect generator.

Changing to Vijeo Citect generator will force completely a new generation when the generation starts next time.

Legacy Project Generation

A Vijeo Citect project is created for each HMI defined in the Topological Model.

The Vijeo Citect projects are created from the template project specified in the generator settings in UAG Customization editor.

The cluster name is the same as the HMI object name.

Since there is no common base project for the legacy generator, the necessary Vijeo Citect labels, alarm groups and categories, etc. are defined in each project.

This usually does not allow a manual creation of a common main project to run all generated HMI projects.

Step Action

1 Under Customization File → General select Vijeo Citect (Legacy Gen.).

2 Click the Edit button in the right pane and select the new Vijeo Citect generator displayed as Vijeo Citect in the drop down list above the generator property grid.

3 Confirm the modification by clicking the Accept button.

30 33003669 09/2014

Page 31: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Variable Generation

Data Type Conversion

A Vijeo Citect variable is created for each HMI and PLC_HMI variable in your UAG project provided the variable is connected to the HMI project and communications to the associated PLC are configured.

A Vijeo Citect variable will be generated provided the following conditions exist: parent Physical Element for the variable has its Control Domain property set Control Domain is within the HMI project being generated parent Equipment Module (or Control Module) for the variable has its PLC property set PLC has a Communication Channel to a Data Server

The data types are converted according to the following table.

The alarming and communication parameters are also set up for your variables.

For more details, refer to Alarm Configuration, page 36 and Communication Configuration, page 43.

UAG Data Type Vijeo Citect Data Type

BOOL DIGITAL

BYTE INT

DATE* LONGBCD

DINT LONG

DT not supported

DWORD LONG **

INT INT

REAL REAL

STRING STRING

TOD* LONGBCD

UDINT LONG **

UINT UINT

WORD UINT

TIME LONG **

* = the LONGBCD variable type is not supported for OPC communication. Any UAG variables that are of this type are not generated if the generator is set to use OPC for communications.** = the LONG data type in Vijeo Citect is a signed data type, however the DWORD and UDINT is unsigned. The reading of an unsigned data type into a signed value may result in large negative numbers in the HMI system if the most significant bit is set.

33003669 09/2014 31

Page 32: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Scaling Parameters

If a variable in UAG has the Scaling min property set, this value will be used to set the Raw Zero Scale and Eng Zero Scale for the variable in Vijeo Citect.

Likewise, the Scaling max property is used to set the Raw Full Scale and Eng Full Scale.

NOTE: As you see in table above, some types in UAG are larger than what is supported in Vijeo Citect. A Compile Error in Vijeo Citect if a scaling value is too large.

Trend Configuration

If a variable in UAG has the Archive field set to Historical then a Vijeo Citect trend tag is created. The trend tag name is the same as the variable name. The trend type is set to periodic with a sample period defined by the Archive Sample Rate

property of the variable. The trend file has the same name as the variable and is placed in the directory defined in the

Customization editor.

Each trend generated is assigned the area based on the UAG Control Domain of the Equipment Module the variable belongs to.

In Vijeo Citect, users need to be created and assigned to these areas in order for UAG generated trends to be available at runtime.

The simplest case is to add the UAG control domain names to the Viewable Areas field of a single user.

Beginning with UAG Version 3.1, the following extensions exist: The archive location expands wildcards, for example

"[data]:Archive1\%CLUSTER%\%NAME%" will expand the cluster and trend names accordingly.These wildcards support string substitution allowing to include values from other fields of the created trend. Substitution strings are the field names of the Vijeo Citect trend configuration file enclosed in % characters.

The sample period can be set by using any valid combination of period value and period unit in the customization editor.

The trend time can be set (extended properties). The trend comment can be set with expansions in the likes of "%var.Description% -

%cm.Name%@%pn.Name%" with different settings for control module and free variables.In the example above "var", "cm" and "pn" stand for the values of the current variable, Control Module and physical node (element) of the trend.Instead of "Description" or "Name" any other object properties out of UAG can be used. Between the single sections enclosed in % characters, any character (here "-" and "@") can be inserted.

The week start day can be set (defaults to Sunday).

32 33003669 09/2014

Page 33: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Archive Location

In the Customization editor you can configure the location where the trend files are stored.

Use Data → Archive Name to configure this directory. You can do this in different ways: Enter or select a full directory path. Enter a path relative to the Data directory defined in the Citect.ini file (e.g. [DATA]:\TANK1\). Enter a directory using path substitution.

Use substitution strings referring to values of the Vijeo Citect trend configuration file.For details please refer to Trend Configuration (see page 32).

In any case, the trend tag name will be appended to the specified location string to build the trend file name.

Archive Sample Rate

In the Customization editor you can configure how long data are archived before they are overwritten again.

Use Data → Archive Name to configure this duration by entering: Period Value

integer value > 1 Period Unit

hour(s), day(s), week(s), month(s)

In the second tab of the archive name dialog you can also configure the start time of the trend file day of the week used to start a week-based period value

Complex Variable Types

Generation of arrays, DDTs, structures, and bitfields (bitfield variables) is supported by creating separate variables for each element of the array or DDT defined.

The name of the resulting Vijeo Citect variable is based on the full element name of the UAG variable.

Some substitutions are made to stop invalid characters from existing in Vijeo Citect variable names.

Variable name conversion for complex data types

UAG Type Rule Example UAG Variable Element Name

Generated Vijeo Citect Variable Name

DDT, Structure, or Bitfield Structure

variable name followed by element name separated by a ’\

ddt1.element1 ddt1\element1

Array variable name followed by index number separated by a ’\

array[2] array\2

Array (negative index)

swap ’-’ for ’m array[-5] array\m5

33003669 09/2014 33

Page 34: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Bitfield Variables

Generation of element variables of bitfield data types is only supported for element types of BOOL.

It is possible in UAG to define embedded BYTE into bitfield variables, however a Vijeo Citect variable will not be generated for such an element variable.

Alarms are still generated for embedded BYTE variables. For more details refer to Alarm Configuration, page 36.

Bitfield variables will also generate a Vijeo Citect variable that contains the raw bits.

The name of this variable is the same as the bitfield variable as defined in UAG.

This variable may be used by alarming on embedded BYTE variables, or in supporting genies for HMI symbols.

NOTE: If OFS is used as the OPC server, any bitfield variables contained in a DWORD cannot be addressed correctly. The generator will display the detected error message if this case occurs.

HMI Variables

All HMI variables in UAG are configured against a virtual disk device within Vijeo Citect.

Initial values are also generated in Cicode, however you will need to manually include this Cicode in your project startup.

For more information, refer HMI Variable Address Generation, page 44.

Multi-dimensional Array

variable name followed by the index of each dimension separated by a ’\

multiarray[3,4] multiarray\3\4

Nested Structures or Arrays

variable names followed by element names or indices separated by a ’\

ddt1.array[3].element1 ddt1\array\3\element1

UAG Type Rule Example UAG Variable Element Name

Generated Vijeo Citect Variable Name

34 33003669 09/2014

Page 35: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Generation of PLC-Data Server Channel

Creation

When a channel between a PLC and data server is created, and the PLC is assigned to the Container Physical Element/Control Module, then all the related tags, alarms, trends, ports and I/O devices will be generated in the respective data server project.

Modification

Modification of channel path will modify the port address.

Deletion

All the tags, alarms, trends, ports and I/O devices will be deleted from the respective data server project, and the genie’s cluster property will be cleared from the HMI project.

33003669 09/2014 35

Page 36: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Alarm Configuration

Introduction

A Vijeo Citect Digital Alarm or Advanced Alarm is created for each alarm condition defined in the Physical Model provided that the parent variable is connected to the HMI project.

Also generated are Vijeo Citect alarm categories to support the Alarm Groups and Alarm Priorities defined in the customization.

Digital Alarm Generation

A Vijeo Citect Digital Alarm is created for every BOOL variable that has an alarm defined in the UAG project provided that the variable parent is connected to the HMI project.

The alarm references the Vijeo Citect variable that is created, and contains the alarm text as defined in UAG.

The Cicode expression for that alarm will be inverted with NOT in the case that the alarm is defined as active in the off state in UAG.

The UAG alarm priority and alarm group are reflected in the alarm category assigned to the digital alarm.

For more details, refer Alarm Category Generation (see page 40).

Time Stamped Alarm Generation

A Vijeo Citect Time Stamped Alarm is allowed to configure for the PLC_HMI or HMI connection type of BOOL variables only.

36 33003669 09/2014

Page 37: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Time Stamped Alarm is shown in the Alarm tab of Variable Properties dialog box.

The following 2 properties are introduced to Alarm tab for every alarm definition of a PLC_HMI or HMI type variable: Alarm 1 - Timer Mode Alarm 1 - Timer

The 3 Alarm 1 - Timer Mode values are No Timer, Variable, and Free Expression.

33003669 09/2014 37

Page 38: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Depending on the Alarm 1 - Timer Mode values, the alarmss are generated as follows:

If the Alarm 1 - Timer Mode is a Variable, then you can create a new variable of PLC-HMI connection type by selecting any of the following data types: DINT DWORD TOD UDINT

Behavior of Time Stamped Alarm in UAG is as follows: If you select No Timer in Alarm 1- Timer Mode list, then by default, Alarm 1 - Timer field will

be unavailable. You can either enter the timer variable in a text field or select from a variable browser window

with the scope set to the timer variable’s parents in SCoD Editor. Scope of timer variable is not restricted in UAG, but restricted to the same template type in the template library.

If you select Variable or Free Expression in the Alarm 1 - Timer Mode list, then the Alarm 1 - Timer field has to be filled. The Alarm 1 - Timer field displays the full variable name of the timer variable.

If you select Free Expression in the Alarm 1 - Timer Mode list, then you have to enter a string in the Alarm 1 - Timer field. The entered string can refer to variables from the same parent in the project by enclosing the variable name in %characters%, for example, %Var1%. The entered string will not be validated in SCoD Editor as well as UAG and the alarm timer is generated as Cicode in Vijeo Citect.

You are not allowed to delete the Time Stamped Alarm of template and SCoD variable in UAG.

The alarm references the Vijeo Citect variable that is created, and contains the alarm text as defined in UAG.

The Cicode expression for that alarm will be inverted with NOT in the case that the alarm is defined as active in the off state in UAG.

The UAG alarm priority and alarm group are reflected in the alarm category assigned to the digital alarm.

For more details, refer Alarm Category Generation (see page 40).

If the Alarm 1 - Timer Mode is set to then

Variable or Free Expression a Time Stamped Alarm is generated in Vijeo Citect.

No Timer a Digital Alarm is generated in Vijeo Citect.

38 33003669 09/2014

Page 39: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Advanced Alarm Generation

A Vijeo Citect Advanced Alarm is created for any limit based alarm defined in UAG provided that the parent variable is connected to the HMI project.

Alarm tags generated in Vijeo Citect are named according to the Vijeo Citect variable name followed by ’_’ and the index of the alarm in UAG. If bit operators are used in UAG the bit number (_bnn) is appended instead of the alarm index. format (b stands for bit and nn for the bit number.

The alarm is generated with a Cicode expression that reflects a comparison (=, <>, >, <, >=, <=) between the variable value and the alarm limit as defined in UAG.

For alarm conditions using bit operators the Vijeo Citect generator fills the Expression field of the alarm definitions in Vijeo Citect using Cicode expressions as shown in the following examples:

Additionally a Free Expression can be used to define any Cicode expression for an alarm.

The expression entered in UAG supports string substitution for tag names. So if you enter a string like %var1% and if there is a variable named var1 in the parent (control module or physical element) of the alarm variable, then this string will be substituted during generation by the final tag name created for the variable var1.

The same string substitution mechanism is supported for the UAG alarm text property allowing you to include tag names and values in the generated alarm description.

The UAG alarm priority and alarm group are reflected in the alarm category assigned to the digital alarm.

For more details, refer Alarm Category Generation (see page 40).

NOTE: In the case of embedded bytes in bitfield variables, the alarm expression is generated using bit shifting and masking operations to extract the value from the generated Vijeo Citect variable that contains the raw bits.

Alarm Area Generation

An area label is produced for each Control Domain defined in the UAG project.

Each alarm generated is assigned the area based on the UAG Control Domain of the Functional Physical Element the variable belongs to.

In Vijeo Citect, users need to be created and assigned to these areas in order for UAG generated alarms to be available at runtime.

The simplest case is to add the UAG Control Domain names to the Viewable Areas field of a single user.

UAG Vijeo Citect

Variable Alarm Operator Alarm Limit Expression

em1_var1 Bit 0 1 (em1_var1 BITAND 0x01) = 1

em1_var1 Bit 1 0 (em1_var1 BITAND 0x02) = 0

33003669 09/2014 39

Page 40: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Alarm Category Generation

Alarm categories are generated in Vijeo Citect for each combination of Alarm Groups and Alarm Priorities defined in UAG.

Vijeo Citect labels for each alarm category are created.

Also created is a Vijeo Citect group for each UAG alarm group as well as a Vijeo Citect group for each UAG alarm priority. See the detailed rules below for more information about how to use these labels and groups in your project.

In order to prepare your customization for generation with Vijeo Citect, you will need to set up priorities correctly for use by Vijeo Citect.

When using the UAG Customization Editor and editing the alarm priority, the description field has to be a text description of the priority and the alarm priority field is a numeric value that corresponds to the priority you desire in Vijeo Citect.

In the Customization Editor under Data → Alarm Priorities you can define further details for the alarm categories.

For example, you can enter Cicode functions for the ON/OFF/ACK actions.

These fields support string substitution allowing to include values from other fields of the created alarm category. Substitution strings are the field names of the Vijeo Citect category configuration file enclosed in % characters.

For example, if you enter AlarmAck(3,3,%CLUSTER%) then the string %CLUSTER% will be replaced during generation by the value of the alarm category’s cluster field.

If the symbol library project included in the Customization Editor has an alarm category which is already defined, then the alarm category will not be generated from UAG.

If an alarm category is not defined in the symbol library project, then alarm category will be generated from UAG. While generating the alarms, UAG verifies the included project as well as the generated project.

Detailed Rules for Category Creation

Whenever alarm group names and alarm priority names are used in Vijeo Citect, they are first combined.

Alarm group names are truncated to 11 characters (padded with underscores if less than 11 characters and any spaces, hyphens etc. are replaced with underscores) and a 2 digit suffix is applied to them.

Then, only the 2 digit form of the alarm priority suffix is applied.

As a result, there is a restriction, a maximum of 100 alarm groups and 100 alarm priorities can be defined. Only numeric alarm priorities can be used.

40 33003669 09/2014

Page 41: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Vijeo Citect label A Vijeo Citect label is created for each UAG alarm group and alarm priority combination. The name is the alarm group name followed by the numeric alarm priority name as explained

above. Vijeo Citect reserves alarm category 255, as a result the expression for the label starts at 256

and is incremented by 1 for each label found. These labels are used in the definition of the individual alarms to associate them with a given

alarm group and alarm priority as defined in UAG.

Vijeo Citect alarm category A Vijeo Citect alarm category is created for each of the UAG alarm group and alarm priority

combinations. The category name is the corresponding Vijeo Citect label from above. The priority for the alarm category is set based on the alarm priorities defined value (the numeric

value assigned to the priority in the Customization Editor).

Vijeo Citect group for each alarm group A Vijeo Citect Group is created for each alarm group. The naming convention is the alarm group name appended with AL. The purpose of the group is to contain all of the label names where this alarm group name

appears. If there are 10 or less alarm priorities then the associations are set directly to the label names. If more then 10 alarm priorities exist, then subgroups are created. The subgroup names are the

group name, appended with a digit. Each subgroup can contain 10 associations and the minimum number of subgroups to contain

all of the label names are created. The associations within the subgroups are then filled. This group can be used to represent all of the alarms that were defined in the original UAG alarm group.

Vijeo Citect group for each alarm priority A Vijeo Citect group is created for each alarm priority. The naming convention is the alarm priority name appended with Alms. The purpose of the group is to contain all of the label names where this alarm priority name

appears. If there are 10 or less alarm groups then the associations are set directly to the label names. If more than 10 alarm groups exist, then subgroups are created. The subgroup names are the

group name, appended with a digit. Each subgroup can contain 10 associations and the minimum number of subgroups to contain

all of the label names is created. The associations within the subgroups are then filled. This group can be used to represent all of the alarms that exist at a given priority level as defined in UAG.

33003669 09/2014 41

Page 42: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Vijeo Citect Specific Properties

In the UAG Customization Editor, the following Vijeo Citect specific extended properties can be edited for each alarm priority.

These properties will be written verbatim into the combined Vijeo Citect alarm category.

Vijeo Citect Specific Extended Property

ACK Action

Acknowledged Alarm Off Font

Acknowledged Alarm On Font

Display On Alarm Page

Display On Summary Page

Log Alarm Acknowledged

Log Alarm Transition To Off

Log Alarm Transition To On

OFF Action

ON Action

Unacknowledged Alarm Off Font

Unacknowledged Alarm On Font

42 33003669 09/2014

Page 43: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Communication Configuration

Introduction

If the Use OPC Server flag is set to false, then both Ethernet and Modbus Plus configuration are generated from topological models in UAG.

An I/O server is created for a data server only if it is connected to the HMI project.

A data server is connected to the HMI project if the following conditions exist: Data server is connected to a PLC via a Communication Channel PLC is connected to an Functional Physical Element Functional Physical Element is connected to a Control Domain Control Domain used by the Functional Physical Element is part of the HMI project

Vijeo Citect ports, boards and I/O device records are created for each Communication Channel defined in UAG, provided the associated I/O server is created.

The communication timeouts defined in UAG are created for each I/O device as a parameter in the Vijeo Citect project.

Ethernet Configuration

For UAG data servers that are connected to a PLC through an Ethernet network segment, a board, port, and I/O device are configured.

The board that is created is named after the network segment and the protocol is TCP/IP. The board address is 0.

The port is created with the name of the PLC.

The port parameters are set in the options field using IP values defined for the PLC and the data server.

If the port options are too long, the contents will be redirected to a file named port_<PLC name>_options.cii and the file reference is stored in the options field.

The resulting I/O device is given the name of the PLC, the protocol of MODNET.

The address is the ethernet address as defined on the PLC in UAG.

Modbus Plus Configuration

For UAG data servers that are connected to a PLC through a Modbus Plus network segment, a board, port, and I/O device are configured.

The board that is created is named after the network segment and the protocol is Modbus Plus.

The port is also created with the name of the network segment.

Both the board and the port are associated with the I/O server for the data server.

The resulting I/O devices are given the name of the PLC, the protocol of Modbus Plus.

The address is as defined on the PLC in UAG.

33003669 09/2014 43

Page 44: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

If a PLC is connected to a data server through a network of Modbus Plus routers, a routing path is looked up in the UAG configuration starting from the data server network segment and terminating at the PLC network segment.

The address of the PLC is correctly formatted to make the appropriate hops, for example 11,22,33.

If there is no network path defined that connects the data server to the PLC, an Error message is generated.

Address Generation

Addresses are assigned to Vijeo Citect variables based on the addresses assigned by the memory mapper in UAG.

The addresses are in the format defined by the MODNET (address segment followed by a 5 digit register number). BOOL or DIGITAL variables are assigned a bit number according to the MODNET convention (address.bitnumber).

Bitfields that are defined to be greater than 16 bits will automatically stretch the addressing to include the next consecutive register if necessary.

HMI Variable Address Generation

The Vijeo Citect variables need an I/O device and an address. As a result HMI variables are created against disk devices that are created during generation.

A disk PLC is created for each real PLC that has HMI variables associated with them.

The name of the disk PLC is ’Real PLC Name’ appended by _DISK

If the maximum content of this I/O device exceeds 64K, consecutive I/O devices are created from _D001 to _D999.

Non-DIGITAL variables are placed with Modbus addresses in the 400000 range.

Each non-DIGITAL HMI variable is given a unique even address in this range.

DIGITAL variables are placed with the Modbus addresses in the 100000 range.

Each DIGITAL HMI variable is given a unique address in this range.

A Cicode file called UAGHMIVariableInitialValues.cii file is created in the project folder.

Inside that file is a function called LoadPresets() that contains an assignment of each of the HMI only variables with their initial values as defined in UAG. The Cicode statements to set the initial values might be distributed over several similar functions that are called internally by the LoadPresets() function to avoid exceeding the size limit of Cicode functions.

You will need to integrate a call to the LoadPresets() function as a part of system startup if you want to use the UAG defined initial values.

If the variables are to be initialized every time Vijeo Citect is started, then use the computer setup editor and set the startup code value to LoadPresets().

44 33003669 09/2014

Page 45: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

If the initialization is necessary only once, then create a utility page with a button that calls LoadPresets(). In this case, the button has to be manually pressed after project startup.

Communication Configuration for OPC

If the Use OPC Server flag is set to true then Vijeo Citect is configured to communicate to the PLCs via an OPC Server.

NOTE: If you enable Use OPC Server, the Create Unlocated PLC_HMI Variables option also has to be enabled.

A Vijeo Citect I/O server and board are created for each data server defined in the UAG configuration that is connected to the HMI project.

Ports and I/O device records are created for each Communication Channel defined in UAG as well provided the associated data server is connected to the HMI project.

The I/O server is created with the name and description of the data server. The board is created with the name of the data server and network segment and given a type

of OPC. A scan rate of 1000 milliseconds is set. The OPC server machine name is assumed to be local host. The port is created with the name of the PLC. The port number is set to the UAG ID for the PLC. The resulting I/O device is given the name of the PLC, the protocol is OPC1. The address is the

ProgID for the OPC server which is defaulted to the OFS ProgID.

Provided Style Sheet

A style sheet (OFSDeviceConfig.xsl) is provided, which can be assigned to an export format for a data server, to let UAG automatically generate a registry import file (*.reg file) for configuring the device aliases in OFS, Schneider Electric’s OPC server.

The OFS configuration tool can not be used to modify these configuration settings, since the tool is not able to import the data from the registry to its configuration database.

Multiple I/O-Devices per PLC

If you set the Multiple I/O-Devices per PLC property under Customization Editor → General → Vijeo Citect to true, every UAG Communication Frame gets its own I/O-Device, per default named as the frame.

Additionally, you can join several frames into one customer named device by editing their extended properties.

The communication frames using the same name will be combined into a single I/O device.

You can modify this property only for newly created PLC. When you modify the existing I/O devices, the following message appears:

Modification of this property will work only for newly created PLC, perform full generation to modify existing I/O devices.

33003669 09/2014 45

Page 46: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Page Generation

Introduction

Each picture defined in the topological model is generated into a Vijeo Citect page.

Genies are placed onto the pages based upon the associations defined in UAG between Functional Physical Elements and pictures.

The symbols are either cascaded or fixed within the page, depending on the page settings.

You will need to finish the page configuration by dragging the symbols into their final places and adding any lines or other GUI elements you need.

During page generation, the Vijeo Citect explorer may open and pages will be created directly in the graphics builder.

Setup for Page Generation

Setting up page generation requires you to have restored the symbol library project that was designed to support your SCoD library.

The definition of this project also needs to be set in the Customization Editor (Symbol Library Project).

You may also define a new page template to use as a part of creating the pages during generation.

This feature is set up using the Customization Editor using the New Page Template Name, Project, Resolution, and Style parameters.

These values are set to reasonable defaults, however you may wish to change them to match your project standards.

These parameters work the same way as the standard New Page dialog presented to you in the graphics builder during a New Page operation.

As a part of generation, include references for the symbol library project as well as the template page project will be added to your generated project.

HMI Symbols for Control Modules

A genie is inserted for each control module with an HMI symbol defined in the SCoD. If multiple genies are configured for a SCoD, then the genie to use can be chosen in the control module’s properties or via setting a default genie for the SCoD, respectively. If the symbol library project contains more than one library with the same genie, then genie of the first library will be generated.

The library and genie name are encoded in the HMI symbol name defined in the SCOD as library name.genie name.

Multiple library support conveys the importance of order in which the library projects are given in the Symbol Library Project.

During the HMI generation, the genies are taken from the first library project. If the genie is not available in the first library project, then it will be taken from the subsequent libraries.

46 33003669 09/2014

Page 47: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

If the Symbol Library Project contains one or more library projects (for example, UAG Basic, DPLibrary1p2) with genie of same name, then the genie assigned to the Template/Control module/Variable of the first library will be generated. If you want to generate the genie from the second library project, then you have to place the second library project before the first library project in the Symbol Library Project.

For example, if the genie Motor is available in UAG Basic and DPLibrary1p2, then during the HMI generation, the genie Motor will be generated from UAG Basic. If the genie Motor has to be taken from DPLibrary1p2, then DPLibrary1p2 should be placed before UAG Basic in Symbol Library Project under customization.

During placement, the genie’s parameters TagPrefix and TagSuffix are populated with the appropriate values of the control module. This allows building a tag name inside the genie as %TagPrefix%varname%TagSuffix% independent of the variable name creation rules defined in customization. The genie parameter Cluster Name is populated from the Extended Properties of the data server.

See Creating Vijeo Citect Compatible SCoDS for more information on the setup and use of genies to support HMI symbols on control modules.

HMI Symbols and Free Variables

A genie is inserted for each free variable with an HMI symbol defined that is associated with a picture through its parent Functional Physical Element.

The library and genie name are encoded in the HMI symbol name defined in the free variable’s Graphical Symbol Name property as library name.genie name.

See Creating Vijeo Citect Compatible SCoDS for more information about creating genies for use by free variables.

Areas

An area number is assigned for each Control Domain defined in the HMI project.

A maximum of 255 areas are allowed.

A label is created for each Control Domain with the name set to the control domain name and the expression set to the area number.

As a manual post generation step, the areas should be associated to the desired users.

Areas for Pages

When a symbol is placed on a page, the symbol’s area number is used to set the area for the page.

Every time a symbol is placed or modified on a page, the page area is set to that symbol’s area.

33003669 09/2014 47

Page 48: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Monitor Pro and Unity Application Generator

Section 2.2Monitor Pro and Unity Application Generator

Introduction

Unity Application Generator supports Monitor Pro as HMI. For Monitor Pro Unity Application Generator generates all databases and pictures necessary for the process visualization.

The Monitor Pro application is generated on the engineering PC and then the generated objects have to be transferred to the production PCs. This chapter describes in detail the procedures from the preparation of the Monitor Pro generation to the running of an existing application.

What Is in This Section?

This section contains the following topics:

Topic Page

Introduction 49

Monitor Pro - Default Server Application 50

Generation Modes of Monitor Pro Server Application 53

Data Conversion Monitor Pro vs. Unity Application Generator 54

Monitor Pro Drivers and Communication 58

Alarming 61

Archiving 65

Monitor Pro Client Application 71

48 33003669 09/2014

Page 49: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Introduction

Monitor Pro Server Application

To be able to generate a Monitor Pro Server Application, Monitor Pro has to be installed already. There are no special settings needed for UAG during Monitor Pro installation.

Terminology

The following table explains the corresponding terms in Unity Application Generator and in Monitor Pro:

NOTE:

Monitor Pro does not support the Data type UDINT. PLC_HMI variables of the Data type UDINT are represented in Monitor Pro as LONGANA which is a signed Data type and therefore the boundaries of the variables are +/- 2147483647. The usual UDINT Data type range under Unity Pro is 0 to 4294967295. For values over 2147483647 you have to use the Data type REAL.

Monitor Pro does not support the Data type UINT. PLC_HMI variables of the Data type UINT are represented in Monitor Pro as ANALOG which is a signed Data type and therefore the boundaries of the variables are +/- 32767. The usual UINT Data type range under Unity Pro is 0 to 65535. For values over 32767 you have use the Data type LONG.

Term in Unity Application Generator Corresponds to the term in Monitor Pro

Data Server SCADA node

HMI View node

Data Servers and HMIs (all nodes of HMI system)

Monitor Pro nodes

33003669 09/2014 49

Page 50: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Monitor Pro - Default Server Application

Introduction

The code generation for SCADA systems creates a Monitor Pro server application for each data server defined within the UAG project. A Monitor Pro server application consists of different folders and files.

The user has to specify a Data Server Path for the server application. UAG will create a default server application in this path. The default server application will be installed with UAG in the installation directory \MonitorPro\Server\Standard.zip. The default application includes a set of default mailbox tags, trigger tags, settings, etc.

NOTE:

If the user wants to enhance the default server application, it is possible to unzip the file, modify it and save it back as a Standard.zip.

The uninstall procedure of UAG does not delete the Standard.zip file. Your modifications to this file will be preserved and not overwritten by the next installation of UAG.

Setup of the Server Application Generation

A Monitor Pro server application corresponds to an UAG data server. Several data servers can be defined. Each data server will be deployed as a different Monitor Pro server application node.

Data Server Path

To be able to generate a dataserver, it is necessary to specify a Data Server Path in the Options of Unity Application Generator. UAG automatically creates a sub directory with the name of the dataserver. Thus the generated server application is located in OPTIONS_PATH\DATASERVER_NAME. Each dataserver has its own directory structure.

You can enter the path name using a system environment variable or an environment variable matching one of the paths defined in Customization Editor, e.g. as %PROJECTDIR%\DATASERVER. For details please refer to The Customization Options (see page 102).

Mailboxes

Mailbox is a unique data type that specific tasks use to communicate with each other.

Tags

A tag is a data element stored in the real-time database which is assigned to a logical name. This tag name is used by Monitor Pro tasks to reference the element in the real-time database.

50 33003669 09/2014

Page 51: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Default Server Application

The default application Standard includes:

Data logging setup with 4 Mailboxes for: ALLOG_HIST_MBX

Used for alarm logging DBLCHISTMBX

Used for database logging DPLCHISTMBX

Used for data point logging SECURITYMBX

Used for security logging

These mailboxes exist in the following configuration tables:

Historian Mailbox Information for dBase IV

Historian Mailbox Information for ODBC

Monitor Task

It is necessary to set the Run flag in the System Configuration table, depending on the database system the user wants to use. The UAG user can choose between two database systems, dBase IV and ODBC.

The following figure shows the System Configuration table:

33003669 09/2014 51

Page 52: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Trigger Tags

Some trigger tags are created in the Default Server Application.

The following figure shows the list of available interval timers:

Communication Mailboxes

Additionally some default communication mailboxes are created in the default server application.

One mailbox is created to exchange data between the driver and the Ioxlator task. This mailbox is called MODTIOXMbx. Another mailbox is created to exchange the data with the PLC. This mailbox is called MODTDrvMbx. The MODTDrvMbx is used in the driver task and therefore it is created in the Modbus TCP/IP driver mailbox Definition table. The MODTIOXMbx mailbox is used in the Ioxlator task and therefore it is created in the I/O Translator Mailbox Definition table.

52 33003669 09/2014

Page 53: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Generation Modes of Monitor Pro Server Application

Introduction

There are two modes for the generation of the Monitor Pro server application

NOTE: To avoid detected errors or corrupted files during generation, all Monitor Pro applications have to be stopped.

Mode: New Generation

A new generation rebuilds the entire Monitor Pro applications. After confirmation, the old applications will be renamed to DATASERVER_NAME.BAK.

If Unity Application Generator generates a data server the first time, it makes sure that there is no existing Monitor Pro server application with the same name. If there is no subdirectory with the name of the data server, UAG creates it and copies the default server application to this directory.

Mode: Incremental Generation

Incremental or relative generation will be used to synchronize the data of UAG and the data of the Monitor Pro server application. A relative generation takes the existing Monitor Pro server applications into account. Since UAG does not generate the entire data for the Monitor Pro application, the programmer has to add data manually. UAG does not force the user to adopt a one way strategy. This strategy makes it possible to modify the process design after having modified the generated data.

Rules for Incremental Generation

Nevertheless, some rules have to be obeyed by the designer and the Monitor Pro programmer.

Do not manually create Data Server application that will be generated by means of UAG. Do not manually add or modify variables in the Ioxlator datasets generated by UAG. For additional logic (e.g. IML), internal variables can be created in Monitor Pro. The programmer

of this variables in Monitor Pro has to verify that the variable name is unique.

The relative generation will not alter the manual enhancements in the server application, as long as they are consistent with the process design.

When starting the incremental generation, UAG checks the timestamp written to the Monitor Pro project during the last generation and compares it with the UAG timestamp for this data server. If no timestamp exists in the Monitor Pro project or the timestamps have different values, UAG will ask the user how to continue. The user can select to either start a new generation of this data server or to stop the generation of this data server.

Generation and Monitor Pro

If a Monitor Pro application has been generated, this application will not be integrated within Monitor Pro directly. It has to be added within the Configuration Explorer manually on the target machine.

33003669 09/2014 53

Page 54: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Data Conversion Monitor Pro vs. Unity Application Generator

Data Conversion Types

The data exchange variables for the communication with the HMI system are categorized according to their communication frames. There are four different communication frame types and one combined frame (ReadWrite) within Monitor Pro.

The following table shows the Communication Frame Types available in UAG.

The Data type ANY will be used for Derive Data types (DDT).

NOTE: The derived data types (DDT) for the PLC-HMI communication can only be used with Monitor Pro and Generic HMI.

For Monitor Pro you have to use the OPC Server for transferring data.

The only valid combination of different frame types is RD & EW and has the meaning of a read / write frame.

Available UAG Data types will be converted to appropriate Monitor Pro Data types by the specific configuration of I/O tasks in Monitor Pro. This configuration will be generated by UAG.

The following Data types can be assigned to a communication frame.

NOTE: The Monitor Pro data set definition types are only for data transfer via RAPD driver.

Frame Type Monitor Pro, Generic HMI iFix, PCVue

Read Data (RD) x

Exception Write (EW) x

Block Write (BW) x

Unsolicited Read(UR) x

ReadWrite (RD & EW) x x

Monitor Pro Data Type

Equivalent Data Type in UAG

UAG frame Data Type

Monitor Pro data set definition type

All, depending on DDT DDT ANY

Digital BOOL BOOL, ANY COIL

Analog BYTE, INT, WORD, UINT

WORD, ANY HREG

Long DINT, UDINT, DWORD

DINT, ANY HREG

Float REAL REAL, ANY HREG

Message STRING ANY HREG

54 33003669 09/2014

Page 55: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

The user can select only one Data type per frame in UAG, e.g. BOOL, WORD, DINT, REAL. The read or write trigger of a specific frame has to be adjusted in Monitor Pro. UAG will not modify these triggers in the communication setup. Analog, Long, Float data types will be generated as HREG, Digital will be generated as COIL.

For example, a variable of the Data type BOOL can be assigned only to a frame with the Data type BOOL. UAG creates for this communication frame a data set within the device driver and a data set in the I/O Translator Dataset Definition. The variable will be created as Digital in Monitor Pro.

Communication Frame Example

The following table shows an example of communication frames.

The communication frames can be defined in the Customization and the SCoD Editor. The following properties are required for frame type definition:

Frame Name (max. 8 characters because of extension _Number. _Number is a unique number which will be created by UAG. The user must not change this number.)

Frame Data type Frame Type

If a PLC has a channel to a data server, all variables assigned to a communication frame will be generated in the Monitor Pro server application. UAG imports all defined frame types from the customization into the project, when a channel to data server is created. If there is a new frame type definition in the SCoD or the customization, UAG will update the frame definitions of the project with the new frame. Used frames can not be deleted or modified in the Customization Editor.

If the user opens the HMI Communication dialog in UAG, all frame definitions are shown.

Frame Name UAG Frame Data Frame Type

ReadFast BOOL Read Data

WritSlow WORD Write Data

WritFast REAL Write Data

... x

33003669 09/2014 55

Page 56: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

The following figure shows an example for the HMI communication.

The user has to enter the address ranges for each used frame. He has two different possibilities to define the ranges.

AutomaticThe Default button in the HMI Communication grid calculates the start addresses and lengths of all communication frames. This calculation is based on the available address range and the used memory. After the calculation the unused memory is evenly distributed to all communication frames. The previous values will be irreversibly overwritten.The user has to be aware, that even small changes in the used memory (e.g. by adding a control module) can lead to a reassignment of several communication frames.

ManualThe user has to enter the addresses manually. The address (e.g. SynBOOL, %M, 1025 - 1283) has to be located within the Address Range (e.g. (%M) 1025 - 2048, Length 1024), defined in the PLC properties and shown in the header of the dialog.

56 33003669 09/2014

Page 57: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Variable Communication Frame Assignment

Each PLC_HMI variable has to be assigned to a Communication Frame. This is possible in the SCoD Editor, which means on the type definition. In UAG the communication frame of a variable can be modified. All the variables of a PLC, assigned to the same Communication Frame in UAG are packed for optimization without gaps in the corresponding data set in Monitor Pro.

Alarm Group and Archive Name

NOTE: Communication Frames, Alarm Groups and Archive Names are only deletable if they are not used.

33003669 09/2014 57

Page 58: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Monitor Pro Drivers and Communication

Introduction

The adjustments of the Monitor Pro SCADA system are very complex. Unity Application Generator sets all these adjustments automatically. The following information gives an overview about the adjustments made by UAG within the Monitor Pro communication.

Communication in Monitor Pro

The Monitor Pro server application database tags are updated through Ethernet (TCP/IP) drivers with the actual values of the PLC variables. IOX/RAPD driver tasks are used between SCADAs and the PLCs.

Modbus TCP/IP Driver Device Definition

Each PLC with a channel to a data server gets the following entries in the Monitor Pro server application. UAG will generate 1 Modbus TCP/IP Driver definition per PLC. The driver definition includes the following items.

PLC name (max. 16 character) IP network address (address of used communication module in channel path) Connection timeout (in seconds)

NOTE: All fields which are not mentioned here will not be filled or modified by the Unity Application Generator.

Frame Type Names

The frame type names consists of different parts. The constituent parts are:

8 characters + _XXXX + YYY, for example readfast_0010002 - frame type name readfast with the PLC Id 10 and the frame number 2

The following table explains the different parts of the type frame name.

NOTE: The PLC Id and the frame number will be generated and administered by Unity Application Generator and are not to be changed by the user.

Part Description

Name Frame type name. Maximum 8 characters, specified in SCoD or Customization Editor.

XXXX PLC identification. A number from 1 to 9999 generated by UAG.

YYY Frame number. A number from 1 to 999 generated by UAG.

58 33003669 09/2014

Page 59: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Modbus TCP/IP Driver Dataset Definition

For each frame type there will be at least 1 data set definition in the driver definition. If the number of variables assigned to 1 frame type exceeds the maximum frame length, UAG will automatically generate additional frames with an incremental extension number. E.g. the first frame of the frame type = ReadFast (PLC Id = 1) will be generated as data set ReadFast_0001001, the second of type ReadFast as ReadFast_0001002 etc. UAG creates more than 1 frame at the same time in Monitor Pro when the length exceeds 100 words.

The following table shows the Modbus TCP/IP driver Dataset Definition.

NOTE: All fields which are not mentioned here will not be filled or modified by the Unity Application Generator.

I/O Translator Protocol Driver Definition

There is 1 I/O Translator protocol driver definition with a fixed name. The name is Ioxlator. The names of the read trigger tags of the I/O Translator data sets are similar to the data set names. The Ioxlator driver definition includes the following items.

Protocol Driver Name (PLC name) Protocol Driver Mailbox Tag Max MSG in PD (Protocol Driver)

NOTE: All fields which are not mentioned here will not be filled or modified by the Unity Application Generator.

I/O Translator Dataset Definition

For each frame type there will be at least 1 data set definition in the I/O translator configuration, according to the data sets in the driver definition shown above.

The following table shows the I/O Translator Dataset Definition.

Field Content generated by UAG

Mailbox Tag MODTIOMbx

Data Set Frame Name + _FrameNumber

Type HREG (no booleans) or COIL (booleans)

Start Frame start address

Len Length of the frame (max. 100 for HREG and 1600 for COIL)

Field Content generated by UAG

Data Set Name Frame Name + _FrameNumber

Data Set Control Tag Frame Name + _FrameNumber

Read Trigger IOXRDTrigger

RD Read DataDepends on frame communication type

33003669 09/2014 59

Page 60: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

The user can adjust the read trigger to have optional read/write rate. The parameter will not be regenerated by UAG.

NOTE: All fields which are not mentioned here will not be filled or modified by the Unity Application Generator.

Ioxlator Tag Definition

UAG will generate for each I/O Translator Data Set Definition the appropriate variables.

The following table shows the I/O Translator Tag Definition.

NOTE: All fields which are not mentioned here will not be filled or modified by the Unity Application Generator.

The following table shows the I/O Translator conversions for UAG Data types.

EW Exception WriteDepends on frame communication type

BW Block WriteDepends on frame communication type

UR Unsolicited ReadDepends on frame communication type

Abs Yes

Field Content generated by UAG

Field Content generated by UAG

Data Tag Variable Name

Dimension 1

Address Absolute variable address

Conv Conversion type, according to the following table

UAG Data Type I/O Translator conversion

Bool Bit

BYTE, INT, WORD, UINT Word

DATE, DWORD, DINT, TOD, UDINT, RLNG

Long

REAL RFLT

60 33003669 09/2014

Page 61: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Alarming

Introduction

The alarm logger task in Monitor Pro is responsible for monitoring specified tags to check whether their values fulfill specified alarm conditions. If a tag is recognized to be in an alarm state, an alarm record is created and passed to a historian task, which writes it to a relational database. If a tag value does no longer meet the alarm criteria, the alarm logger creates an additional record. Alarm viewer controls in client applications communicate with the alarm server allowing the user to browse and acknowledge the alarms.

Generation of the Alarming Configuration

UAG configures the alarm logger, its connection to both the dBase4 historian and the ODBC historian tasks, and the alarm server. The user is responsible for running only one historian task in his application.

The Alarm Logger Setup tables will only be created when UAG creates a new Monitor Pro application, these tables (and others) are part of the UAG Standard server application, which will be copied when creating a new Monitor Pro application.

The Alarm Group Control table of the alarm logger in Monitor Pro will be filled with the names of the corresponding Alarm Group of UAG. It is possible to create Alarm Groups in the SCoD / Customization editor. These Alarm Group can be assigned to a variable on Type Level (SCoD) or instance level (UAG). If a variable is set to Alarm Yes the Alarm Group is not empty the following tables will be generated into Monitor Pro application.

The following table shows the Alarm Group Control Table.

The Alarm Definition Information table of an alarm group in Monitor Pro will be filled with entries for all alarm variables belonging to the corresponding Alarm Group.

The following table shows the Alarm Group Control Table.

Field Content generated by UAG

Group Name Alarm Group Name

Acknowledgement YES

Audible YES

Logging YES

Field Content generated by UAG

Unique Alarm ID Unique number corresponding to the alarm definition.

Cond. Alarm condition property of variable.

Limit Alarm limit property of variable (i.e. a constant value, not a tag).

Deadband -

33003669 09/2014 61

Page 62: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

NOTE: In case of manual addition of the alarm entries directly in Monitor Pro the user has to check the uniqueness of the alarm IDs.

Configuration of the Alarm in UAG

UAG will allow the configuration of the alarm state for both boolean and non-boolean variables.

Unity Application Generator variable objects will expose two properties for alarms. The configuration of the alarms are the same than the configuration of the archive data.

The following list shows the two different alarming properties.

AlarmIt can store values for Not_Assigned, Yes or No

Alarm Group NameIt stores a string that will be used as the name of the database table in Monitor Pro. With this property the user is able to group the alarm variables, which will handle the same alarm and which will use the same trigger.

Message Text Alarm text property of variable.

Priority Alarm priority property of variable.

Area Name Equipment name of variable (i.e. a picture with this name will be generated).

Use Global Hide YES

Field Content generated by UAG

62 33003669 09/2014

Page 63: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

The following figure shows the UAG Alarm Properties for a BOOL variable.

33003669 09/2014 63

Page 64: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

The variable properties can be set and used in SCoD editor as with other variable properties and can also be viewed and/or modified in UAG.

The following table shows the attributes of the alarm for the data type BOOL.

The following table shows the attributes of the alarms for other possible data types.

NOTE: All alarms of a non-boolean variable need to be in the same Alarm Group.

Number of alarms 1

Alarm Group The alarm can be set to an Alarm Group to combined alarms.

Alarm Priority The Alarm Priority will be preset within the SCoD Editor or the Customization. For example:1 - low2 - medium3 - high4 - urgent

Alarm Text default or user-defined

Operator =

Alarm Limit Not_Assigned0 - OFF1 - ON

Number of alarms 1 to 8

Alarm Group The alarm can be set to an Alarm Group to combined alarms.

Alarm Priority The Alarm Priority will be preset within the SCoD Editor or the Customization. For example:1 - low2 - medium3 - high4 - urgent

Alarm Text default or user-defined

Operator Not_Assigned=, <>, >, <, >=, <=

Alarm Limit Number for the selected alarm.

64 33003669 09/2014

Page 65: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Archiving

Introduction

In Monitor Pro there are several tasks that can perform archiving (logger tasks). They read values of specified tags from the real-time database and pass the values or derived data through to one of the several other tasks (historian tasks). The historian tasks perform saving of the values in a relational database according to specified database schemes. For archiving real-time values there are two logger tasks, the Database Logger and the Data Point Logger. For the historian tasks we consider here only the two probably most commonly used tasks, the dBase4 Historian and the ODBC Historian. Only one of the four possible combinations of logger and historian tasks have to be used in one server application.

The following figure shows the data structure for logging/archiving.

Database Logger vs. Data Point Logger

One of the main differences between Database Logger and Data Point Logger is the database schema for storing the values. The Database Logger uses database tables where up to 1,024 tag values can be stored in a row together with a time stamp, whereas the Data Point Logger uses database tables where only one tag value can be stored in a row together with a time stamp. The Database Logger saves space and is more efficient, whereas the Data Point Logger is easier to use, especially when tags have to be added or removed from logging. With the Database Logger, adding or removing tags from logging could lead to a change of the database schema and this means to change an already existing database table manually in the database system.

The following table shows the different properties of the available Logger functions.

Logger type Stored values

Database Logger up to 1,024 tags in one row

Data Point Logger 1 tag in one row

33003669 09/2014 65

Page 66: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Generating the Archiving Configuration

UAG delivers together with the standard server application the pre-configured mailboxes for both DB Logger and DP Logger that are also introduced into the configuration for dBaseIV and ODBC historians. However the user has to configure the chosen historian information table on his own using the database names generated by UAG for corresponding DB or DP Loggers. Both historian tasks will be entered in the system configuration table, but the user has to activate one of the historian tasks manually.

NOTE:

To avoid incorrect operation of the UAG historian, do not delete or modify the UAG historian mailboxes (DBLCHISTMBX and DPLCHISTMBX).

You must not activate more than one historian task.

UAG configures both Database Logger and Data Point Logger to allow the user to choose one of them to run in his application. UAG creates schema information and logger control information for both logger tasks, but the user is responsible for starting one of these tasks.

NOTE: The user has to be aware that the Database Logger can be used with the dBase4 Historian only if the length of the column names (i.e. tag names) in the database schema does not exceed 8 characters.

Since UAG does not know, which combination of tasks the user prefers, UAG can only issue an alerting message to the user, if the schema columns are longer than 8 characters.

For Database Logger, when a tag is added or removed from logging, UAG adds or removes the corresponding column to/from the database schema and issues an alerting message to the user that he has to change an existing database manually before (re-)starting the application. If the database is not existing, Monitor Pro will create it, using the new schema when the first value will be stored.

UAG creates tags for triggering both Database and Data Point Loggers actions. The user can enter them into the Interval timer or Event timer information tables according to the chosen logging strategy.

Database Logger Configuration

The Schema Control table of the database logger in Monitor Pro will be filled with the archive names defined in UAG appended with the number like _001 if needed.

NOTE: All fields which are not mentioned here will not be filled by the Unity Application Generator.

The following table shows the Schema Control Table.

Field Content generated by UAG

Schema Name Archive name (in upper case) if necessary appended with _001, _002 etc. This can be necessary if more than 1100 variables are assigned to a schema.

66 33003669 09/2014

Page 67: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

The first child table of the Schema Control table is the Index Information table. It will be filled with the same content for all schemes.

NOTE: All fields which are not mentioned here will not be filled by the Unity Application Generator.

The following table shows the Index information Table.

The second child table of the Schema Control table is the Schema Information table. It will be filled with the names of all variables that are assigned to the archive, which is represented by the current schema.

NOTE: All fields which are not mentioned here will not be filled by the Unity Application Generator.

The following table shows the Schema Information Table.

The Database Logging Control table of the database logger in Monitor Pro will be filled with the archive names defined in UAG.

NOTE: All fields which are not mentioned here will not be filled by the Unity Application Generator.

The following table shows the Schema Information Table.

Field Content generated by UAG

Index Number 1

Unique Index YES

Column List FLTIME

Field Content generated by UAG

Column Name FLTIME for the first column, the variable name otherwise.

Column Usage TIME for the first column, DATA otherwise.

Column Type " " for the first column, either INTEGER, SMALLINT, NUMBER or FLOAT according to the variable’s data type otherwise.

Field Content generated by UAG

Log Name Archive name, if necessary appended with _001, _002 etc.

Log Trigger Log name appended with _TRIG

Historian Mailbox DBLCHISTMBX

Database Alias Name Archive location as defined within Customization Editor.

Database Table Name Same as Log Name

Schema Name Archive name if necessary appended with _001, _002 etc.

33003669 09/2014 67

Page 68: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

The Database Logging Information table of the database logger in Monitor Pro will be filled with the tags defined within UAG.

The following table shows the Database Logging Information table entries generated by UAG.

Data Point Logger Configuration

The Data Point Schema Control table of the Data Point Logger in Monitor Pro will be filled with only one schema definition for all archives defined in UAG.

NOTE: All fields which are not mentioned here will not be filled by the Unity Application Generator.

The following table shows the Data Point Schema Control Table.

The Data Point Logger Control table will be filled with the archive names defined in UAG.

NOTE: All fields which are not mentioned here will not be filled by the Unity Application Generator.

The following table shows the Data Point Logger Control Table.

Field Content generated by UAG

Tag Name First name has to be empty (recommendation of Monitor Pro). Following names will be the tag names.

Column Name FLTIME for the first tag and variable name (schema columns are named with variable names for uniqueness purposes).

Logon Change No

Column Usage If the Tag Name is empty and the Column Name is FLTIME the Column Usage is TIME.

If the Tag Name is unequal empty the Column Usage is DATA.

Field Content generated by UAG

Schema Name TAGDATA

Logged Value Data type FLOAT

Field Content generated by UAG

Table Name Archive name, if necessary appended with _001, _002 etc.

Schema Name TAGDATA

Database Alias Name Archive location as defined within Customization Editor.

Historian Mailbox DPLOGHISTMBX

68 33003669 09/2014

Page 69: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

The Data Point Logger Information table will be filled with the names of all variables which are assigned to the archive, which is represented by the current Data Point Logger Control table.

NOTE: All fields which are not mentioned here will not be filled by the Unity Application Generator.

The following table shows the Data Point Logger Information Table.

The Customization editor imports the list of archive names from the SCoD library, but the user can add additional archive names.

The user has to specify the additional Archive parameter in Customization Editor, the archive location. This attribute corresponds in the Monitor Pro application to the database name alias configured in the historian configuration table.

Archive Configuration

Unity Application Generator variable objects will expose two properties for archiving.

The following list shows the two different archiving properties.

ArchiveIt can store values for Not Assigned, No or Historic

Archive NameIt stores a string that will be used as the name of the database table in Monitor Pro. With this property the user is able to group the variables, which will be stored within the same archive and which will use the same trigger.

If there are too much variables for the same database table, UAG will create additional table names automatically (e.g. by appending a number to the name specified by the user) rather than limiting the user when he assigns archive names to variables. Since the length of the schema name in Monitor Pro is restricted, the UAG archive name has to be restricted to 8 characters.

Both variable properties can be set within the SCoD editor (if Monitor Pro is assigned to the list of HMIs of the library) and the properties can be set to be changeable or invisible for UAG. In the SCoD editor the user has to define any value of the Archive Name property in a list (similar to access levels) prior to its use in a variable’s property. Both archive-related properties can be used in user-defined SCoD properties and with inheritance.

The Customization editor imports the list of archive names from the SCoD library, but the user can add additional archive names. The user can only modify or delete archive names if they are not used in the UAG project. This will be checked automatically by the Customization editor.

Field Content generated by UAG

Log Tag Variable name

Log On Change No

Log Trigger Log name appended with _TRIG

33003669 09/2014 69

Page 70: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

In UAG, the user can modify the values for both properties if they were set to be changeable in the SCoD editor. The value of the archive name property can be selected from the list of names defined in the customization. If a variable with the archive property is used for a HMI other than Monitor Pro, the archive settings have no effect.

70 33003669 09/2014

Page 71: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Monitor Pro Client Application

Introduction

The HMI generation part includes the mimic and the symbol generation for the Monitor Pro Client Builder. For this the file Client.zip is used by UAG.

Client.zip

The file Client.zip will be installed within the Unity Application Generator installation. The installation path is: ..\Unity Application Generator\MonitorPro\Client\Client.zip. This file contains every symbol for the integrated SCoDs of UAG. The user has to set the adjustment for the OPC Cluster just once. After this UAG is generating the Monitor Pro Client Builder directory structure for the entire project.

NOTE: The uninstall procedure of UAG does not delete the Client.zip file. Your modifications to this file will be preserved and not overwritten by the next installation of UAG.

Steps for Client.zip

The user has to do the following steps.

HMI Path

To be able to generate the HMI mimics, it is necessary to specify a HMI path within the Options of UAG. UAG automatically creates a subdirectory with the name of the HMI. Thus the generated HMI application is located in the directory HMI_PATH\HMI_NAME.

You can enter the path name using a system environment variable or an environment variable matching one of the paths defined in Customization Editor, e.g. as %PROJECTDIR%\HMI. For details please refer to The Customization Options (see page 102).

Step Action

1 Expand the file Client.zip with the whole directory structure.

2 Open the project client.fvp with the Monitor Pro Client Builder application..

3 Set the adjustment for the OPC Cluster. Tools → Servers → Cluster → OPC Cluster

Change the OPC Cluster name to the Data Server name which is used within the UAG project.

4 Create a new file Client.zip with the whole directory structure.

5 Copy the file Client.zip into the client directory (..\Unity Application Generator\MonitorPro\Client\Client.zip).

33003669 09/2014 71

Page 72: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Generation of the Monitor Pro Client Builder mimics

UAG generates all available Client Builder mimics and symbols which are used within the SCoDs or free variables. For this UAG has a task list for the elements which will be generated new or incremental. This list is available within UAG under File → Properties → Objects → to be generated → HMI.

The generation for HMI consists of creating a set of Client Builder mimics. The mimic files have no extensions. They are located in HMI_PATH\HMI_NAME\Mimic Files.

The generator creates a mimic for each UAG picture object. For each Control Module of a Functional Physical Element, which is assigned to a picture object, a SCoD symbol is generated in the Client Builder mimic. The name of the HMI symbol has to be specified in the SCoD library. For each free variable a symbol can be generated. The user has to select this within the user interface of the variable.

If UAG detects a modification of a Control Module or a Control Module free variable, all corresponding Control Module properties (Name, Data Server Name) will be set with the actual values from the UAG database.

At run time, the symbol gets the real-time information from the Monitor Pro server runtime database.

Client Builder Symbol and Mimic Format

The symbols and mimics for Monitor Pro are generated in ASCII format. The format is explained in the document "Client Builder ASCII Mimic guide" that belongs to the Monitor Pro documentation.

The following programming code shows the ASCII format of a Control Module (symbol) generated by UAG for Monitor Pro Client Builder.

The following programming code shows the ASCII format of a free variable generated by UAG for Monitor Pro Client Builder.

Monitor Pro supports branching. Thus it is possible to generate the Symbol Name (e.g. Symbol6), the Branch Name (e.g. monitor1:gerequip_VAS01) and the Variable Name (e.g. monitor1:@gerequip_con01) to define the entire symbol. The symbol will substitute the variable animation, with the Branch Name + Variable Name. The declaration @ANA is for non-bool variables, @DIGI is for boolean variables.

72 33003669 09/2014

Page 73: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

The following programming code shows the header format which will be generated for every Monitor Pro mimic.

33003669 09/2014 73

Page 74: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

The following programming code shows the entire Monitor Pro mimic.

74 33003669 09/2014

Page 75: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

The following figure shows the symbol and free variable from the coding example above.

33003669 09/2014 75

Page 76: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

iFIX and Unity Application Generator

Section 2.3iFIX and Unity Application Generator

Introduction

Unity Application Generator supports Intellution´s iFIX as HMI. For iFIX Unity Application Generator generates all databases and pictures necessary for the process visualization.

The iFIX application is generated on the engineering PC and then the generated objects have to be transferred to the production PCs. This chapter describes in detail the procedures from the preparation of the iFIX generation to the running of an existing application.

What Is in This Section?

This section contains the following topics:

Topic Page

Introduction 77

How to Configure iFIX for the Use with Unity Application Generator 78

Manual Configurations Before Generation for iFIX 79

How to Generate a New iFIX Application 82

How to Generate an iFIX Application Incrementally 83

Unity Application Generator and iFIX Drivers 84

How to Deploy the Generated Application to the iFIX Nodes 85

How to Run an Existing Unity Application Generator Project 86

Configuring iFIX Redundancy 87

76 33003669 09/2014

Page 77: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Introduction

Terminology

The following table explains the corresponding terms in Unity Application Generator and in iFIX:

Reference Information

A detailed list of the generated objects for iFIX you will find in Generation for iFIX, page 296

Term in Unity Application Generator Corresponds to the term in iFIX

Data Server SCADA node

HMI View node

Data Servers and HMIs (all nodes of HMI system)

iFIX nodes

33003669 09/2014 77

Page 78: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

How to Configure iFIX for the Use with Unity Application Generator

Introduction

Before you use iFIX with Unity Application Generator, you have to configure iFIX in a certain way. The steps for this configuration are described in the following.

NOTE: Intellution recommends that the iFIX node name and the computer name are the same. The iFIX node name is specified as part of the installation of iFIX.

After the installation the Modbus Plus/Ethernet Driver MBT V2.0 has to be installed.

How to get the MBT Driver?

The MBT driver is not a product of the Schneider Electric company. You have to contact Dimension Software Inc. to order the driver.

Phone+1 (828) 635-7189

Fax+1 (828) 625-5319

Webhttp://www.caro.net/dsi

[email protected]

The part number of the driver is MBT, the description is MODBUS TCP/Plus OPC Server.

Procedure for iFIX Configuration

For iFIX configuration for Unity Application Generator follow the steps:

Step Action

1 Run the system configuration from Programs → iFIX in the task bar.

2 Select Configure → SCADA.

3 In the I/O driver name click the ? button.

4 From the list of available drivers choose Modbus Plus/Ethernet Driver MBT V2.0.

5 Confirm with OK.

6 Click the Add button.Result: The driver appears in the configured I/O drivers list.

7 Confirm with OK.Result: You will be asked to answer the question: Database DATABASENAME does not currently exist, or is not in your database directory, use anyway?

8 Answer with Yes.

9 Save with File → Save.

10 End the configuration with Exit

78 33003669 09/2014

Page 79: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Manual Configurations Before Generation for iFIX

Introduction

Unity Application Generator is not able to generate all information needed in the system configuration (SCU) of iFIX. Therefore, some configurations have to be done manually before generation. These are described in the following.

Alarm Areas Configuration

For the Alarm Area configuration the following rules apply: You have to define an Alarm Area for each Control Domain of the HMI. You have to name the Alarm Area the same as the Control Domain name. The maximum length of an Alarm Area name is 30 characters. The number of Alarm Areas in iFIX is unlimited.

Result

Each generated tag belongs to an Alarm Area (if the Control Domain is defined).

Security Area Configuration

For the Security Area configuration the following rules apply: You have to define a Security Area for each combination of Control Domain and access level. Each Security Area name have to be the concatenation of the Control Domain name and of the

ID of the different access levels (see example below). Access levels are defined in the customization.

The maximum length of a Security Area name is 20 characters. The maximum number of Security Areas is 254. The access rights of the operators to the different Security Areas have to be defined in iFIX

Security. An operator can have access rights for multiple Security Areas. Groups can be defined with

access rights on multiple Security Areas. An ActiveX or Dynamo variable belongs to a Security Area because the Control Module, which

is represented by the ActiveX or Dynamo, belongs to an Functional Physical Element. If an operator wants to modify a variable value, the ActiveX first queries the iFIX security system if the operator currently logged in has rights on the Security Area of that variable.

Result

Each generated tag belongs to a Security Area (if the Control Domain and access level are defined).

33003669 09/2014 79

Page 80: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Default Values for Access Levels

The default values for access levels in the default customization file IATBASIC10.OSC are:

Example

For example, for a Control Domain named CDWashing, the following Security Areas have do be defined in the iFIX system configuration:

Working with Remote Nodes

For working with remote nodes the following rules apply: The iFIX node name and the computer’s name have to be exactly the same.

Note: Special characters like "-" are not allowed in the iFIX node names. In the iFIX system configuration you have to declare the remote nodes (in the network

configuration section).

Modbus TCP/IP I/O Driver

Most of the configuration for the I/O driver will be carried out by the generation in Unity Application Generator: There will be a configuration file for each Data Server and each communication driver. This file will be named DATASERVERNAME.MBT.

Other modifications have to be made to complete the driver configuration (see driver manual). Fields set by generation are defined in Generated iFIX Driver Configuration from Unity Application Generator Point of View, page 311 and Generated iFIX Driver Configuration from the Driver Point of View, page 313. If these fields are modified they will be overwritten by Unity Application Generator generation.

Access Level

Default Value in IATBASIC.OSC

1 Operator

2 Production

3 Technical

4 Maintenance

5 Factory

Access Level

Example Value Example Security Area Name

1 Operator CDWashing_1

2 Production CDWashing_2

3 Technical CDWashing_3

4 Maintenance CDWashing_4

5 Factory CDWashing_5

80 33003669 09/2014

Page 81: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Duplicates of SCoD ActiveX

It is possible to create multiple copies of SCoD ActiveX in different pictures of iFIX. To do so, you can copy and paste the ActiveX, but the properties of the copies have not to be changed. There is an option in Unity Application Generator to manage correctly the manually copied ActiveX.

If this option is selected in Unity Application Generator and Control Modules are modified, the generator seeks if the same object has been copied to other pictures of the ...\DYNAMICS\PIC directory and will update all copies (SAME ActiveX type and same object name).

Delete a Control Module

If a Control Module is deleted in Unity Application Generator all copies of the ActiveX will be deleted.

33003669 09/2014 81

Page 82: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

How to Generate a New iFIX Application

Procedure for New Generation

Steps how to generate a new iFIX application:

Step Action

1 Generate the Unity Pro project(s).

2 Download Unity Pro project(s) into the PLC(s) or Unity Pro simulator.

3 Start iFIX.

4 Login in as a user who has all access rights.

5 Start iFIX workspace.

6 Run iFIX generation.

7 Check Error and Warning messages in generation.

8 Check PowerTool for driver.

9 Reload the generated configuration file of the driver (the name of the configuration file is the name of the Data Server defined in Unity Application Generator).

10 Complete the driver configuration.

11 Check if Channels, Control Modules and Data Blocks are enabled.If not: Enable them and start the driver in run mode (start button)

12 Reload the generated database in the Database Manager (the name of the database is the name of data server defined in Unity Application Generator).

13 Switch to run mode.

14 Open the pictures.

82 33003669 09/2014

Page 83: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

How to Generate an iFIX Application Incrementally

Procedure for Incremental Generation

Steps how to incrementally generate an iFIX application:

Step Action

1 Generate the Unity Pro project(s).

2 Download the changes of the Unity Pro project(s) into the PLC(s) or Unity Pro simulator.

3 In iFIX switch to configure mode.

4 Generate the iFIX application incrementally.

5 Check PowerTool for the driver.

6 Reload the generated configuration file of the driver (the name of the configuration file is the name of Data Server defined in Unity Application Generator).

7 Check Error and Warning messages in generation.

8 Complete the driver configuration.

9 Check if Channels, Control Modules and Data Blocks are enabled.If not: Enable them and start the driver in run mode (start button)

10 Reload the database after incremental generation.

11 Switch to run mode.

12 Open the pictures.

33003669 09/2014 83

Page 84: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Unity Application Generator and iFIX Drivers

Overview

For the work with iFIX and the MBT driver, you have to use Intellution iFIX 3.5 or higher (incl. MBT driver from Dimension Software Inc.).

The driver configuration file is generated before the SCADA generation and is loaded automatically into the driver, otherwise the I/O addresses of the tags would not be accepted as a valid address by the iFIX database.

The driver’s Data Blocks are defined using different address ranges defined by the Unity Application Generator Memory Mapper according to data types and priority (event, parameter, synoptic).

Data Types

The data types managed by the driver have to match the Unity Application Generator data types.

The following table defines the correspondences between the Unity Application Generator types, how they are grouped by the Memory Mapper, which Data Block types are used, and which auxiliary conversion has to be made at the tag level.

Redundancy

The MBT driver supports redundancy for Quantum and Momentum. Two IP addresses can be configured (primary and backup) for two NOE modules. This helps to prevent the incorrect functioning of NOE module and PC Ethernet card but not against network communication disruption.

UAG / Unity Pro HMI, PLC_HMI Type

Memory Mapper Type

Driver’s Data Block Type

Tag special conversion Type

BOOL BOOL Digital None

WORD WORD Unsigned Integer None

UINT WORD Unsigned Integer None

INT WORD Unsigned Integer Signed Integer

UDINT DINT Unsigned Long None

DINT DINT Unsigned Long Signed Long

REAL REAL Float None

BYTE WORD Unsigned Integer None

84 33003669 09/2014

Page 85: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

How to Deploy the Generated Application to the iFIX Nodes

Overview

When the generation for HMI is completed on the engineering workstation, the generated objects have to be copied manually to the corresponding PCs in the production plant. The generated objects are contained in the ...\DYNAMICS directories of the engineering workstation.

For an overview of the control topology see also The Topology of a Control System in the Basic User Manual.

Terminology

The following table explains the corresponding terms in Unity Application Generator and in iFIX:

Procedure

For deploying the generated HMI application to the iFIX nodes follow the steps:

Term in Unity Application Generator Corresponds to the term in iFIX

Data Server SCADA node

HMI View node

Data Servers and HMIs (all nodes of HMI system)

iFIX nodes

Step Action

1 Configure each iFIX node manually: Each SCADA node has to have the same name as the corresponding Data

Server in Unity Application Generator.

NOTE: For correct functioning of the distributed system it is recommended that the iFIX nodes have the same names as the PCs. The distributed system will not start up, if the iFix nodes have different names than the PCs.

2 On each View node PC install the SCoD Library and ActiveX support DLLs needed for ActiveX access to the iFIX database.

3 Copy the database files <SCADA NODE NAME>.PDB from the engineering workstation to the corresponding SCADA node PC in the plant.

4 Copy the driver configurations <SCADA NODE NAME>.MBT from the engineering workstation to the corresponding SCADA node PC in the plant.

5 Copy the *.GRF pictures from the ...\DYNAMICS\PIC directory of the engineering workstation to the corresponding iFIX View nodes PCs.

33003669 09/2014 85

Page 86: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

How to Run an Existing Unity Application Generator Project

Functioning of Communication

At run time, the ActiveX get the real-time information from iFIX runtime databases. This is achieved by using DLLs developed by Unity Application Generator, which use the Intellution EDA toolkit functions. Thus, communication exists only between SCADAs and PLCs.

Two DLLs have been implemented to manage exchanges between the iFIX databases and the ActiveX: one for read/write values, another for security, alarming and alarm acknowledgment. Using the iFIX network capabilities, an ActiveX can get its information from a SCADA on a different iFIX node.

Procedure for Running an Existing Project

Steps how to run an existing Unity Application Generator project:

Step Action

1 Run Unity Pro.

2 Open corresponding Unity Pro project(s).

3 Connect to the PLC(s), make sure that you are EQUAL.

4 Start iFIX.

5 Login in as any user with the appropriate access rights.

6 Start iFIX workspace.

7 Check Error and Warning messages in generation.

8 Check PowerTool for the driver.

9 Reload the generated configuration file of driver (the name of the configuration file is the name of Data Server defined in Unity Application Generator).

10 Complete the driver configuration.

11 Check if Channels, Control Modules and Data Blocks are enabled.If not: Enable them and start the driver in run mode (start button)

12 Reload the generated database into the Database Manager (the name of the database is the name of data server defined in Unity Application Generator).

13 Switch to run mode.

14 Open the pictures.

86 33003669 09/2014

Page 87: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Configuring iFIX Redundancy

iFIX Redundancy

iFIX provides network capabilities for SCADA node redundancy. Two different PCs can be defined as one SCADA node with different physical node name but same logical node name. This is considered as a unique SCADA node, made of a Primary node plus a Backup node.

A View node gets the data from the logical node, and the configuration of the logical node defines which physical node is the Primary node and which one is the Backup node. During normal operation the data come from the Primary node, but if connection is lost, the iFIX system switches to the Backup node.

Unity Application Generator and iFIX Redundancy

From Unity Application Generator point of view, managing SCADA redundancy is transparent and is not configured in Unity Application Generator. The user has to define the data server as the logical SCADA node name. The logical node will be used for iFIX pictures generation.

LAN Redundancy

LAN redundancy between different iFIX nodes (View and SCADA nodes, but not PLCs) can be also implemented, but this is outside of the scope of Unity Application Generator and belongs to the supervisory system redundancy capabilities.

Reference

Detailed information about iFIX Redundancy can be found in:

iFIX Electronic Books - Mastering iFIX - 2. Redundancy.

33003669 09/2014 87

Page 88: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Supported HMIs

Generic HMI and Unity Application Generator

Section 2.4Generic HMI and Unity Application Generator

Using Unity Application Generator with a Generic HMI

Working Principle

When you start a new customization with the customization editor you select the option for using a generic HMI.

If you have selected this option Unity Application Generator creates a XML file for each Data Server for import containing all tags necessary for your HMI application, see Generation for a Generic HMI, page 315.

Additionally, Unity Application Generator creates a second file for each Data Server that contains data from the XML file reformatted in a way the user’s HMI is able to import. How the data is reformatted is defined in a stylesheet file (XSL file).

With the customization editor the user specifies which export formats (XSL files) are available in the Unity Application Generator project.

You can create your own XSL files to adjust the format of the output file to the format of your HMI. The XSL files have to be copied into the DB directory which is set in the Customization Editor of UAG.

Each Data Server in the Unity Application Generator project has a property to specify which export format to use for generation.

NOTE: The XML file for generic HMIs will be generated completely new, even for incremental changes in Unity Application Generator.

Specifying Export Formats for Generic HMI Data

UAG provides the possibility to specify more than one transformation for the XML file which will be generated during the generation of a Generic HMI. This allows extracting different parts of the data in the XML file to different resulting files.

For each transformation the user has to specify the style sheet file and the name of the file to be created as the result of the transformation. All transformations use the same generated XML file as input, this means it is not possible to define a chain of transformations.

88 33003669 09/2014

Page 89: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Unity Application Generator (UAG) 3.3 SP4

UAG Memory Mapper

33003669 09/2014

UAG Memory Mapper

Chapter 3UAG Memory Mapper

Memory Mapper

Introduction

In UAG, communication frames will be used for the data transmission between the PLC and the data server. The following information is how the memory mapping for the communication frames is working.

PLC Memory Assignment

The entire memory of a PLC is managed by UAG. The memory of a PLC is split into different segments depending on the PLC family type.

The segments are 0x (%M), 1x (%I), 3x (%IW) and 4x (%MW). Here are the 0x (%M) and 4x (%MW) read/write segments and the 1x (%I) and 3x (%IW) read segments. They are split again into different ranges.

The following list gives you an exemplary overview of the ranges for a Quantum PLC. 0x (%M) segment Battery Coil HW Modules HMI Net Partner Reserve

1x (%I) segment HW Modules Reserve

3x (%IW) segment HW Modules Reserve

4x (%MW) segment Timer Register Time of Day HW Modules HMI Net Partner PLC Communication Reserve

NOTE: The M580 PLC supports only the address ranges 0x (%M) and 4x (%MW).

33003669 09/2014 89

Page 90: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

UAG Memory Mapper

The following example shows the PLC Properties of a Quantum PLC.

HMI Communication

UAG is using the 0x (%M) and 4x (%MW) memory for HMI communication. The 0x (%M) memory segment is used to transmit boolean variables to the HMI and the 4x (%MW) memory segment is used to transmit all other data types.

The following table shows all data types which can be used for HMI communication:

Data type Used in memory segment Frame data type

BOOL 0x (%M) BOOL

BYTE 4x (%MW) WORD

DATE 4x (%MW) DINT

DINT 4x (%MW) DINT

DT 4x (%MW) ANY

DWORD 4x (%MW) DINT

INT 4x (%MW) WORD

REAL 4x (%MW) REAL

STRING 4x (%MW) ANY

90 33003669 09/2014

Page 91: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

UAG Memory Mapper

For iFIX the variables in UAG are automatically assigned to the correct frame type.

For all other HMIs you can assign a variable to a frame by using the Communication Frame property of the variable.

To be able to map any variable to a communication frame, it is necessary to create a channel between a PLC and the data server. After this all variables of the specific PLC can be mapped into its reserved memory. One PLC can have only one channel to one data server. Therefore it is not possible to exchange data from one PLC to several data servers.

The following figure shows the channel configuration between a PLC and a Data Server (exemplary):

In the example above the 0x (%M) addresses range from 993 to 2000 and the 4x (%MW) addresses range from 1001 to 2000. These address ranges can be assigned in the PLC property dialog. The names of these ranges in the PLC property dialog are „HMI 0x" and „HMI 4x".

Relation of Variables and iFIX Communication Frames

For iFIX every PLC_HMI variable in UAG needs an address, to be transmitted between the HMI and the PLC. UAG automatically assigns an HMI communication frame to a variable. There are at least 12 HMI communication frames available. The 0x (%M) segment range will then be split into 3 HMI communication frames. These frames are called:

SynBOOL ParBOOL EvtBOOL

The SynBOOL frame is used for normal variables (no alarm, no archive, no Command = "Parameter").

TIME 4x (%MW) DINT

TOD 4x (%MW) DINT

UDINT 4x (%MW) DINT

UINT 4x (%MW) WORD

WORD 4x (%MW) WORD

Data type Used in memory segment Frame data type

33003669 09/2014 91

Page 92: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

UAG Memory Mapper

The ParBOOL frame is used to communicate variables if the command is set to Parameter and Alarm and Archive are both set to "No".

The EvtBOOL is used for variables if Alarm = "Yes" or Archive = "Yes".

The following figure shows the available communication frames:

The 4x (%MW) segment range is divided into 9 HMI communication frames. These frames are called:

SynWORD, SynDINT, SynREAL ParWORD, ParDINT, ParREAL EvtWORD, EvtDINT, EvtREAL

The SynWORD, SynDINT and SynREAL frames are used for normal (no alarm, no archive, no Command = "Parameter") variables.

The ParWORD, ParDINT and ParREAL frames are used to communicate variables if the command is set to "Parameter" and Alarm and Archive are both set to "No".

The EvtWORD, EvtDINT and EvtREAL frames are used for variables if Alarm = "Yes" or Archive = "Yes".

Unlocated PLC_HMI Variables

For HMIs (except iFIX) you can set the option Create unlocated PLC_HMI variables under UAG Customization → General → HMI.

If you set this option, no memory addresses are assigned to these variables and you have to use an OPC server to transfer data during runtime.

92 33003669 09/2014

Page 93: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

UAG Memory Mapper

Frames Address Assignment

For each frame, you have to enter the start address and length. Therefore you can determine which addresses are used for the different communication frames.

NOTE: For iFIX it is not possible to create additional communication frames.

The following figure shows the chosen addresses and length’:

The Used column shows how many variables are currently assigned to the frame. The % Used column gives a hint if a frame is nearly full. During the memory mapping process, UAG will detect frame usage higher than 100% and gives a Warning message to you. The memory mapper will stop if the length of one communication frame would be above 100%. Then you have to reassign the memory layout to the communication frames (Address and Length).

If a frame is too small, UAG displays the % Used entry in red. The memory layout can be changed manually or by clicking the Default button. If you arrange the memory, UAG checks that there are no overlaps in the memory layout.

33003669 09/2014 93

Page 94: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

UAG Memory Mapper

Manual Modification of the Start Address or Length of one Communication Frame

You can modify the start address or length of each communication frame.

You may increase or decrease the start address of a communication frame. As long the length has still the same size the end address of this communication frame will be also increased or decreased by the same number. UAG checks immediately if the new start address or the new end address will not overlap with another communication frame.

Additionally, you may increase or decrease the length of a communication frame. If there is an overlap with another frame, you have to move its start address. The assigned memory address of the variables already mapped will not be changed, if only the length of a communication frame will be modified.

Default Button

The Default button helps to get a valid memory layout for the HMI communication very quickly.

The Default button in the HMI Communication grid recalculates the start addresses and lengths of all communication frames. This calculation is based on the available address range and the already used memory. After the recalculation the available memory is evenly distributed between all communication frames.

NOTE: The previous values will be irreversibly overwritten.

By using the Default button you will get a valid memory arrangement as long as there is more memory available than already used. But you have to be aware that even small changes in the used memory can lead to a reassignment of several communication frames (e.g., by adding a control module).

The memory mapper will assign addresses according on the memory layout of the HMI communication. This depends on the HMI communication frame of each variable.

If a memory range is too small because it contains too many variables, then the memory mapper displays an Error message.

94 33003669 09/2014

Page 95: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

UAG Memory Mapper

The following figure shows an example of a detected error message of the Memory Mapper:

If you double-click the detected error message, the respective HMI communication frame setup grid will be open automatically.

33003669 09/2014 95

Page 96: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

UAG Memory Mapper

96 33003669 09/2014

Page 97: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Unity Application Generator (UAG) 3.3 SP4

33003669 09/2014

Customization and Project Maintenance

Chapter 4Customization and Project Maintenance

Introduction

The project initialization, customization and maintenance is a necessary part in an application development done with Unity Application Generator. In fact it is the first step before starting a new project.

The tasks are divided into different parts: Adapting Unity Application Generator with the help of the Unity Application customization editor Setting the Analyzer options and the code generation options inside Unity Application Generator Version management and project documentation inside Unity Application Generator.

This chapter will explain these tasks.

What Is in This Chapter?

This chapter contains the following sections:

Section Topic Page

4.1 Customizing Unity Application Generator 98

4.2 Fieldbus Dialogs 143

4.3 Project Maintenance 154

33003669 09/2014 97

Page 98: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Customizing Unity Application Generator

Section 4.1Customizing Unity Application Generator

Introduction

This section describes how to create and use customization files.

What Is in This Section?

This section contains the following topics:

Topic Page

Introduction 99

Working with the Customization Editor 100

The Customization Options 102

Defining the Physical Model 107

Defining Naming Conventions 113

Defining Name Creation Rules 115

Defining Data 122

Defining an Archive Name 125

Defining PLC 127

User Defined Modules - Overview 131

How to Define a Generic Module 133

Add User Defined Module - Dialog Box 135

How to Change the Customization 142

98 33003669 09/2014

Page 99: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Introduction

Introduction

Unity Application Generator can be adapted to the customer needs with respect to 6 principle groups of subjects: General (paths, libraries, tools etc.) Physical Model Naming Convention Name Creation Rules Data PLC

Customization File

This adaptation is done with the help of the UAG Customization editor.

Customization information is stored in files named projectname.osc.

Each Unity Application Generator project requires its own customization file.

When a new project is created with Unity Application Generator, a customization file has to be selected. The selected file is then used for the customization of the project and a copy is created of the selected file with the name of the project.

In this way all new projects can be created with a standard customization, but it is also possible to change the customization of an existing project by editing the file projectname.osc.

Analysis of Project

If the customization file for an existing project is changed Unity Application Generator will detect this and offers to analyze the project.

In case of an Error, for example, an existing name does not fit to the changed naming convention, Unity Application Generator will report an Error which has to be corrected manually.

Unity Application Generator will give the option to analyze the project every time the project is opened until the project conforms to the customization.

33003669 09/2014 99

Page 100: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Working with the Customization Editor

What is the Customization Editor?

The UAG Customization editor of Unity Application Generator is a separate program used for the creation and modification of customization files for Unity Application Generator projects.

A customization file named projectname.osc is necessary for each project.

The customization file contains user defined information for the configuration of the Unity Application Generator environment, like libraries and tools used, naming conventions, name creation rules, data formats and so on.

File Administration

For the administration of customization files you use the functions New, Open, Close, Save, Save as..., Exit in the File menu.

HMI Used in Project

NOTE: The HMI used in the project is selected when a new customization is created. It can not be changed afterwards.

The HMI supported by the currently opened customization file can be displayed within the structure tree via Customization File → General → Vijeo Citect (Monitor Pro, iFIX, Generic HMI).

Version of Customization File

The version of the currently open customization file can be displayed with Customization → Version.

Enter Customization Information

In the left part of the customization editor´s starting screen you see the structure of your customization file in form of a tree.

The tree contains 6 principal groups of subjects that you can customize: General Physical Model Naming Convention Name Creation Rules Data PLC

When clicking on the + in front of these groups the sub items are displayed.

For entering all customization information you go through all items given in the tree. Each time when you select another item a dialog is opened leading your input.

For more detailed information on the options, refer to The Customization Options, page 102.

100 33003669 09/2014

Page 101: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Analyze Customization

The customization can be checked with Customization → Analyze.

The result is a report containing a validation for all customized items. Erroneous items are displayed in red. A detected error in customization can, for example, be a name definition that exceeds the maximum length of the object name.

All detected errors have to be corrected before the customization file can be used in the project.

Handling

The handling of the UAG Customization editor is similar to most menu-driven modern software programs.

For most actions, you have different possibilities for getting the task done. Use the buttons of the dialogs or the menu items. Double-left-click on the element or in the field which is the target of your action. Right-click on the element or in the field which is target of your action to display a context menu.

33003669 09/2014 101

Page 102: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

The Customization Options

Preferences

Select General in the tree view of the UAG Customization editor to display a dialog where you can select or enter Preferences. Use %MW instead of %IW for IOScanner Read results

You can select the check box to generate the IOScanner read using %MW memory address. By default, this check box will be cleared. Selecting this check box will clear all existing generated memory for the corresponding modules in UAG and the next generation will regenerate memory according to the option selected.

Allow delete of saved project versionsIf you select the check box, you can delete old versions of your project. You will find the delete option in the UAG application under File → Versions... → Delete.

Maximum number of control modules per sectionYou can select the maximum number of control modules in a Functional Physical Element (section). You can enter a number between 1 and 999. The default number is 32.

Unique Section NamesBy default, this check box is selected, which means that all PLC section names have to be globally unique inside the UAG project. If you clear the check box, then you can use same section names in different PLCs. If same section names are present in UAG, and you select the check box, then a message, This setting cannot be changed now! Please make sure all section names are unique in the project, appears. To avoid this message, you have to give unique PLC section names in UAG. Nevertheless, in this case, UAG requires that all control modules located under a physical element have to be assigned to the same PLC as their parent physical element.

Generate reserved space for interlocksBy default, this check box is selected. During the PLC generation, reserved space will be generated for undefined interlocks. If you clear the check box, then reserved space will not be generate for undefined interlocks during PLC generation. This will not impact the reserved space of interlocks generated earlier.

General Customization Options

Under Customization File → General the following options are available: Paths

You define the paths of libraries, XML Style Sheets and Help files, etc. Libraries

You define which Control Module Type libraries and Template libraries can be used in the project. You have to select atleast one Control Module Type library to create UAG project.

ToolsUnity Application Generator allows you to attach documents for the process design to the different objects.Any number of Windows applications (or tools) for the different document types (for example Microsoft Word, Microsoft Excel, AutoCAD) can be defined in the customization.

102 33003669 09/2014

Page 103: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Export Format NameYou define which export formats can be used in the Unity Application Generator project by assigning names to the style sheet files (XSL files).Only style sheet files located in the directory, defined via Paths, can be selected.

HMIVijeo Citect, Monitor Pro, iFix, Generic HMI

Paths

Paths defined in the customization are available as environment variables during UAG and Customization Editor runtime.

Example: UAG → Options → General

For example, a customization may have the following expansions:

Path Name Defined in Customization

Path Value Entered in Customization

Type Environment Variable Expanded as

n/a <PROJECTDIR> Built-in %PROJECTDIR% D:\PRJ32\u4419

n/a <INSTALLDIR> Built-in %INSTALLDIR% C:\Program Files\Schneider Electric\Unity Application Generator

SCoD Libraries <PROJECTDIR> Built-in %LIBRARIES% D:\PRJ32\u4419

33003669 09/2014 103

Page 104: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Since the naming convention for system environment variables is stricter than the path definitions for a customization, every letter exceeding A-Z and 0-9 will be converted to an underscore. In the above example, "SCoDs Help Files" and "my:desktop" were valid path names in the customization. General system environment variables like %ProgramFiles% or %APPDATA% can be used as well.

Physical Model

Unity Application Generator allows you to define the structure of the physical tree in the project’s customization. You can define the number of physical levels as well as the properties and behavior of each of these levels.

You will find more detailed information about the definitions of the physical model in Defining the Physical Model (see page 107).

XML Style Sheets <INSTALLDIR>\DB Built-in %XML_STYLE_SHEETS% C:\Program Files\Schneider Electric\Unity Application Generator\DB

SCoD Help Files <PROJECTDIR> Built-in %SCODS_HELP_FILES% D:\PRJ32\u4419

Template Libraries <PROJECTDIR> Built-in %TEMPLATE_LIBRARIES% D:\PRJ32\u4419

Template Help Files <PROJECTDIR> Built-in %TEMPLATE_HELP_FILES% D:\PRJ32\u4419

Citect Config C:\Documents and Settings\All Users\Application Data\Schneider Electric\Vijeo Citect X.y\Config

NOTE: In the Vijeo Citect X.y, X indicates the major version and y indicates the minor version.

For example, Vijeo Citect 7.20

User-defined

%CITECT_CONFIG% C:\Documents and Settings\All Users\Application Data\Schneider Electric\Vijeo Citect X.y\Config

my:desktop C:\Documents and Settings\user\Desktop

User-defined

%MY_DESKTOP% C:\Documents and Settings\user\Desktop

Path Name Defined in Customization

Path Value Entered in Customization

Type Environment Variable Expanded as

104 33003669 09/2014

Page 105: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Naming Conventions

Every industry has its own standards (e.g. S88 for batch control) and methods (e.g. GAMP in pharmaceutical). In addition, each company has its own standard for naming objects. Unity Application Generator allows you to define the rules for the naming of the objects according to the customer standards.

Separate naming conventions can be defined for each object shown in the tables below:

You will find more detailed information about the definitions of naming conventions in Defining Naming Conventions (see page 113).

Name Creation Rules

The Name Creation Rules cover the definition of how the full variable names, being generated into the PLC and HMI applications, are composed by Unity Application Generator.

Now in Unity Application Generator you are allowed to define the name creation rules for all kinds of variables in the most flexible way.

You will find more detailed information in Defining Name Creation Rules (see page 115).

Physical Model

Physical Element (e.g. Area, Process Cell, Unit, Equipment Module)

Control Module

Variable

Topological Model

PLC

Data Server

Control Domain

Channel

HMI

Network Segment

Network Node

Picture Group

Picture

33003669 09/2014 105

Page 106: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Data

This part of the customization defines: Access Level Alarm Group Alarm Priority

Note: The customized options for alarm values have to fit the available options in the HMI (e.g. low, medium, and high for iFIX).

Archive Name Communication Frame Data Type

Note: Valid data types are the elementary and derived data types of Unity Pro (Data type ANY* is not supported).

Display Format (for numbers) Measurement Unit Group Measurement Unit

You will find more detailed information in Defining Data (see page 122).

PLC

This part of the customization defines which PLC configurations are allowed in the projects. PLC Family Rack Module User Defined Module Fieldbus

You will find more detailed information in Defining PLC (see page 127).

106 33003669 09/2014

Page 107: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Defining the Physical Model

Overview

Unity Application Generator allows you to define the structure of the physical tree in the project’s customization.

You can define the number of Physical Levels as well as the properties and behavior of each of these levels.

Default Physical Levels

By default the following Physical Levels are used to structure the process according to ISA Standard S88.01: Site Area Process Cell Unit Equipment Module

Naming Convention Element

If you define the Physical Model by yourself, Area, Process Cell, Unit, and Equipment Module under the Naming Convention element are removed from the tree view of the UAG Customization editor.

For every addition and deletion of a Physical Level under the Physical Model element of the customization tree, a corresponding sub-element is added or removed dynamically to the Naming Convention element.

When the definition of the Physical Level is changed, the tree view of the UAG Customization editor is adjusted accordingly.

33003669 09/2014 107

Page 108: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

If you keep the default levels, the sub-elements of Naming Convention are identical to the default Physical Levels described above.

108 33003669 09/2014

Page 109: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Physical Levels Dialog Box

Select the element Physical Model in the tree view of the UAG Customization to open the Physical Levels dialog box.

Item Description

Site Label Defines the name of the site as shown in the UAG user interface.The name can start either with a character or a number.No special characters are allowed for the name.The name can exist of 3 to 32 characters/numbers.The name is not part of the name creation rules in the customization.

Site Icon Defines the icon to be used in the physical tree for the site.Click the ... button to open a browse dialog to define the icon.

Add Opens a dialog to add and define a new Physical Level.

Modify Opens a dialog to modify the currently selected Physical Level.

Remove Removes the Physical Level at the bottom of the grid.

Physical Level Grid The grid displays 1 line for each defined Physical Level.

For each Physical Level the following information is displayed.

Level Defines the position of the level in the physical tree.Level 1 is located right below the Site level, level 2 is located right below level 1 etc.You can not edit the level numbers.

Label Label is the name of the Physical Level as shown in the UAG user interface.The name can contain letters, digits, and the special characters blank ( ), hyphen (-), and underscore (_).The names of different levels have to be different.

Unique Names Defines, if the names assigned to objects of the corresponding Physical Levels have to be unique in the whole project.

NOTE: In any case the elements of the physical tree that have the same parent in the physical tree have to have distinct names.

CM Container Defines, if the Physical Level can contain control modules.If the value is set to yes, the Name Creation Rules for control module variables are initialized (refer Defining Name Creation Rules (see page 115)).

33003669 09/2014 109

Page 110: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Adding/Removing Physical Levels

The number of Physical Levels to be used in an UAG project can be increased with the Add button and decreased with the Remove button.

Clicking the Add button opens a dialog to add and define a new Physical Level. The grid displays a new line for the new Physical Level at the bottom.The new Physical Level is initialized as follows: Label is set to level n, where n is the number of the new Physical Level. Unique Names is set to the same value as in the previous level. CM Container is set to yes. Naming Convention is initialized to the naming convention of the previous level. Name Creation Rules are initialized to match the rules currently existing in UAG, i.e. for free

variables name of new level + _ + name of variable and for CM variables name of new level + _ + name of CM + _ + name of variable.

Clicking the Remove button removes the Physical Level at the bottom of the grid. If another Physical Level is selected, a message window is displayed to inform you that you have to remove the child level before you can remove the parent level. In case of removing a Physical Level, the name creation rules and the naming convention for

this Physical Level are also removed. It is not possible to have less than 1 Physical Level or more than 8 Physical Levels. Removing a Physical Levels is not possible, if the Physical Level is already used in the UAG

project.

Customization Report

The definitions of the physical tree are included in the Report created by the UAG Customization editor.

In this report the definitions of the physical tree occupy a separate chapter right before the chapter for the naming convention.

Variable Container Defines, if the Physical Level can contain free variables.If the value is set to yes, the name creation rules for free variables are initialized (refer Defining Name Creation Rules (see page 115)).

Icon Defines the icon to be used in the physical tree for this level.Double-click into the cell to open a browse dialog to define the icon for the Physical Level.

Item Description

110 33003669 09/2014

Page 111: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Handling of Physical Model in UAG Projects

The definition of the Physical Levels impacts the following items in UAG.

Item Description

properties of physical elements

If a Physical Level is allowed by the customization to contain control modules or variables, the property dialog of such a physical element contains the following fields: PLC Name

Allows the user to assign a PLC to this physical element.The PLC assignment is only needed, if the element actually contains control modules or free variables.

PLC Section NameName of the PLC section to be generated in the respective PLC(s).This property is initialized to the name of the physical element when it is created.

Control DomainAllows you to assign a control domain to this physical element.This information is necessary, if the physical element and its associated control modules are to be displayed by an HMI.

PictureSpecific picture to be used in the HMI for the display of this physical element.

copy / paste If you copy a part of the physical tree and pastes it to the tree, you are automatically asked for following replacement of names: The name of top level of the pasted tree, if the name violates the

uniqueness rules for this Physical Level.NOTE: If the Physical Level is defined to have unique names, the name has to be unique among all physical elements of this level in the whole project. Otherwise the name only has to be unique among all physical elements with the same parent.

The names of the sub-elements of the pasted tree, if such a name violates the uniqueness rules for this Physical Level.

PLC generation If a control module or another element of the physical model is mapped on a PLC, the entire path of physical elements from the Site to the mapped element is generated into the respective PLC application. For Unity Pro applications the physical elements are generated as a

hierarchy of functional modules.The physical element that contains control modules is generated as a PLC section rather than a functional module.The PLC section is assigned to the functional module corresponding to its parent.NOTE: A physical element containing control modules may still be generated as a functional module, if there are also control modules further down the hierarchy.

33003669 09/2014 111

Page 112: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Changing Existing Projects

You can change the definition of the Physical Levels of an existing project.

This situation is handled as follows: When the project is opened, UAG detects that the customization has changed.

UAG notifies you that the customization has changed and asks you, if the project is to be updated with the customization changes.If yes, UAG starts an Customization Analyze operation.

The Customization Analyze operation verifies, if the physical model of the project is consistent with the definitions of the customization.If not, the inconsistencies are reported in the output window.There are no automatic changes of the project as a result of the changed customization.

112 33003669 09/2014

Page 113: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Defining Naming Conventions

Description Length

The first sub item in the naming conventions tree is called description length. Here, you define the maximum length of the description of each object, that can be introduced when such an object is created in Unity Application Generator.

Object Name Composition

The next sub items in the naming conventions tree are the objects, for which a naming convention can be defined: Physical Elements (e.g. Area, Process Cell, Unit, Equipment Module) Control Module Variable PLC Channel HMI Control Domain Data Server Network Node Network Segment Picture Group (only available for HMIs of type Generic HMI or Monitor Pro) Picture (only available for HMIs of type Generic HMI or Monitor Pro

For each object you get a dialog for the definition of the name composition.

The naming convention for each object can be built of 1 to 6 different fields.

Each field can be of the following types: Letter Number List

Letter Field

The following options are available for letter fields: Fixed size Variable size Define a fixed string Capital and/or small letters, with or without digits

NOTE:

The text of a letter field with a fixed string cannot be changed later on in Unity Application Generator.

The variable size string may start with a digit (but the entire field must not be numeric).

33003669 09/2014 113

Page 114: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Number Field

For a number field you define the maximum number of digits. Furthermore, you choose, if leading zeros shall be added or not.

Field Defined by User´s List

The third type of field allows the user of Unity Application Generator to select a part of the object name from a list. The elements of this list are defined with the customization editor using the list designer. Lists can be newly created, deleted and modified using the list designer. All lists defined during customization get a unique name and can be used for fields of different objects.

Such a list contains two columns Short: The contents of the short column is the text used for the object name. Description: The contents of the Description column serves as description for the user of Unity

Application Generator when selecting list element for the name to be defined.

NOTE:

An empty list cannot be used in the name convention. It is not possible to delete a list used by an object of the naming conventions. The elements of a list may have a different number of characters for the short column, e.g. a, b, c, d, e, ... 11, 12, 13, 14, ... A, B, AB, ABC, ABCD, ...

"_" is allowed in the short column. (Lists containing "_" are not allowed in naming convention for Physical Elements, Control Modules and Variables.)

114 33003669 09/2014

Page 115: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Defining Name Creation Rules

Overview

The Name Creation Rules cover the definition of how the full variable names, being generated into the PLC and HMI applications, are composed by Unity Application Generator.

In previous Unity Application Generator versions these rules were fixed, e.g. the full name of a variable of a control module was created as <equipment module name>_<control module name>_<variable name>.

Now in Unity Application Generator you are allowed to define the name creation rules for variables in the most flexible way.

The Name Creation Rules to be used in a UAG project are defined in the project’s customization and in the UAG project rules are applied for the creation of the full variable names.

Tree View

Name Creation Rules is an element of the tree view of the UAG Customization editor.

Below this element there is 1 sub-element for each physical level that is enabled to contain control modules or free variables.

For each such physical level there is 1 sub-element CM Variables if control modules are enabled, and 1 sub-element for Variables if free variables are enabled for this level.

Select 1 of these sub-elements to open the Name Creation Rules dialog box.

NOTE: The elements being displayed in the tree view depend on the definition of the physical tree (refer Defining the Physical Model (see page 107) ). This means that the tree view changes, if the definition of the physical tree is changed.

33003669 09/2014 115

Page 116: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

The following diagram shows the tree view for a physical tree definition in which control modules and free variables are enabled for all levels.

Name Creation Rules

A name creation rule consists of a number of fields, which define how the Unity Application Generator creates the full names of the related variables.

NOTE: You are fully responsible for the definition of name creation rules that makes sure the uniqueness of full variable names within the UAG project. Unity Application Generator provides no support for checking the rules themselves, since only you know the details of the plant’s naming structure. Uniqueness of full names is always checked when objects are created.

116 33003669 09/2014

Page 117: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Name Creation Rules Dialog Box

Select 1 of the sub-elements in the tree view to open the Name Creation Rules dialog box.

The Full Variable Name, Full Variable Description of Control Module or Physical Element variables for Unity Pro, and the Default Alarm Text for Vijeo Citect can be configured independently.

Item Description

Physical Level Use this list to choose the physical level to which the naming rule belongs.

Variable Kind Use this list to choose between free variables or variables of a control module.

When you change the selection of one of the two lists above, the contents of the Full Variable Name frame displays the fields for the selected rule.

Full Variable Name / Full Variable Description and Default Alarm Text

Number of Fields Increment and decrement the number of fields of which the full variable name is composed with the arrow buttons.The number of fields can not be edited directly.The maximum number of fields is 32.

Edit n button Click the Edit button of a field to open the respective Field Properties dialog box (see paragraph below).Beside the button the field properties are displayed in a concise form.

Current Length Displays the current length of the full variable names / alarm description as calculated from the field settings.

Maximum Length Displays the maximum length for full variable names (up to 32 characters) alarm description (up to 255 characters)

33003669 09/2014 117

Page 118: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Field Properties Dialog Box

Click the Edit button of a field to open the respective Field Properties dialog box.

Select 1 of the following values for Field Type: Fixed String Physical Level Variable

The Field Settings are adjusted when the Field Type is selected.

Fixed String Selected as Field Type

Fixed String selected

Field Settings

Item Description

Text Enter an arbitrary string.The restrictions as for allowed characters are the same as for variable names except that underscore (_) characters are not allowed here.

118 33003669 09/2014

Page 119: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Physical Level Selected as Field Type for Full Variable Name

Field Type Physical Level selected for Full Variable Name

Field Settings

Physical Level Selected as Field Type for Full Variable Description and Default Alarm Text

If you select Physical Level for Field Type of Full Variable Description and Default Alarm Text, the list displays in case of Control Module variables:

the Physical Levels and Control Modules Physical Element variables:

the Physical Levels

You can select any Physical Level and the corresponding description will be used as the text.

Variable Selected as Field Type for Full Variable Name

If you select Variable for Field Type of Full Variable Name, the field settings are empty, since the variable name occurs as a whole.

Item Description

Physical Level The physical levels being offered depend on the physical level for which the name creation rule is to be defined.Any level of the physical tree that is above the variable in the physical hierarchy is allowed.

Sub-Field Select a single field defined in the naming convention for this physical level.The list also allows to select the name of the physical level, which indicates that the entire name of the physical level is to be used.

33003669 09/2014 119

Page 120: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Variable Selected as Field Type for Full Variable Description and Default Alarm Text

If you select Variable for Field Type of Full Variable Description and Default Alarm Text, the variable description will be used as the text.

Name Creation Rules for Other Objects

The name creation rules for other objects are not user-definable.

In particular this applies to the following objects: Function blocks

The name creation rules for function blocks are derived from the naming rules for the CM variables or the level specific free variables on the same level.The function block names are created by omitting the variable name from the name creation rule.Example:If a variable name is CM1_Var1, the corresponding function block name will be CM1.

PLC sectionsThe name creation rules for PLC sections containing control modules are fixed.The name of a PLC section equals the name of the parent of the control module, if no explicit section name is defined by the user.Otherwise the user-defined section name is used as the name of the section.When the name of a physical node is changed, the name of the associated PLC section also changes, unless the user has already entered an explicit section name.NOTE: The elements of the physical model that are parents of the PLC section are created in the PLC application as a hierarchy of functional modules. The names of the functional modules equal the names of the corresponding physical elements.

NOTE: Duplicate names may cause incorrect operation.

The full names of function blocks and PLC sections have to be unique within the UAG project.

Customization Report

The Name Creation Rules are included in the Customization Analyze report created by the UAG Customization editor.In this report the name creation rules occupy a separate chapter right behind the chapter for the naming convention.

Restrictions

The following restrictions apply to the Name Creation Rules: There are 3 ways in which full variable name can be constructed: <Physical_Tree_Component>_<Tag name/Variable name> <Tag name/Variable name>_<Physical_Tree_Component> <Physical_Tree_Component>_<Tag name/Variable name>_<Physical_Tree_Component>

The UAG Customization editor forces you to mention the variable name as a part of full variable name in name creation rules.In previous Unity Application Generator versions the full variable name was created as <equipment module name>_<control module name>_<variable name>.

120 33003669 09/2014

Page 121: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

You have to provide the separator (_) and the position of the separator (before or after or on both sides of variable name) explicitly.If no separator is provided, then the UAG Customization editor displays a message window and forces you to provide separators.

No separator allowed on physical level, control modules and variables.UAG Customization editor does not allow to enter underscore (_) as a fixed string while defining the name convention of physical levels, control modules and variables.

The control module name (at least partial) is part of the full variable name.UAG Customization editor enforces you to mention control module name (at least partial) as part of the full variable name in name creation rule.

Violation of Uniqueness

UAG verifies the uniqueness of names whenever you carry out an action that may potentially violate this uniqueness.

If you carry out such an action the following steps are performed: UAG determines the list of full names that would be newly created by the action. UAG verifies if any full name in this list is in conflict with the currently existing full names. If one or more name conflicts are detected, the conflicts are resolved in one of the following

ways: If the conflicts can easily be resolved by renaming one or more objects, UAG informs you of

the conflicting full names and asks you for a new name to the objects to be renamed. If the conflicts cannot easily be resolved by renaming or if the objects to be renamed cannot

easily be determined, a message window is displayed to inform you that the action cannot be executed and a list of conflicting full names is displayed.

Additionally the functionality Analyze Project also verifies the uniqueness of full names. This is supported for actions where the uniqueness of full names cannot be immediately verified, e.g. when you change the name creation rules of an existing project in the customization.

The generation of PLC and HMI applications is only allowed, if no naming conflicts are detected.

NOTE: The verification of the uniqueness of full names not only applies to variable names, but also to the names of PLC sections and to function blocks that represent control modules.

Changing Existing Projects

When you change the Name Creation Rules of an existing project, many variables within the project get a new full name. This situation is detected by UAG when the project is opened.

The following actions are carried out when this situation is detected: A verification of the uniqueness of full variable names is started. If there are naming conflicts,

the conflicting full names are displayed in the output window. UAG keeps a list of changes that need to be generated into the PLC and HMI applications. This

list is extended by one or more entries so that the necessary renaming operations are executed when the PLC applications and HMI applications are generated the next time.

33003669 09/2014 121

Page 122: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Defining Data

Overview

Under Customization File → Data the following items can be defined: Access Level Alarm Group Alarm Priority Archive Name Communication Frame Data Type Display Format Measurement Unit Group Measurement Unit

Access Level

Default access levels in the default customization file IATBASIC10.OSC

You can Add, Modify and Remove access levels.

Alarm Groups

The default alarm groups depend on the library/libraries selected under General → Libraries.

You can Add, Modify and Remove alarm groups, but you can not remove an alarm group that is used by one or several libraries.

Alarm Priority

The default alarm priorities depend on the library/libraries selected under General → Libraries.

You can Add, Modify and Remove alarm priorities, but you can not remove an alarm priority that is used by one or several libraries.

NOTE: The customized options for alarm values have to fit the available options in the HMI (e.g. low, medium, and high for iFIX).

Access Level Default Value

1 Operator

2 Production

3 Technical

4 Maintenance

5 Factory

122 33003669 09/2014

Page 123: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Archive Name

Unity Application Generator allows you to select an Archive Name for a variable if the Archive property of the variable is set to Historic.

For a project you can define several archive names and their properties in the UAG Customization.

Please refer to Defining an Archive Name, page 125.

Communication Frame

The default communication frames depend on the HMI selected when a new customization is created and on the library/libraries selected under General → Libraries.

You can Add, Modify and Remove communication frames, but you can not remove a communication frame that is used by one or several libraries.

Data Type

The default data types (displayed in blue) can neither be removed nor renamed.

Additional data types will be added to the data type list when you select a library under General → Libraries.

You can Add, Rename and Remove data types, but you can not remove or rename default data types or data types that are used by one or several libraries.

Activate the check box in front of a data type to use it in your project.

You can not deactivate a data type that is used by one or several libraries.

Display Format

The default display formats depend on the library/libraries selected under General → Libraries.

You can Add, Modify and Remove display formats, but you can not remove or modify a display format that is used by one or several libraries.

Activate the check box in front of a display format to use it in your project.

You can not deactivate a display format that is used by one or several libraries.

Measurement Unit Group

Measurement unit groups arrange the physical units of variables.

For example, the Electricity group contains all necessary physical units for electrical values (e.g. Volt, Ampere and Hertz).

You can not Remove a measurement unit group that is used in the in the Measurement Unit grid.

You can Add and Rename measurement unit groups.

33003669 09/2014 123

Page 124: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Measurement Unit

The Measurement Unit grid displays the unit symbols, descriptions and unit groups.

Activate the check box in the Used column to use the respective unit in your project.

You can Add, Modify and Remove measurement units.

Measurement Unit grid in the UAG Customization

124 33003669 09/2014

Page 125: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Defining an Archive Name

Overview

Unity Application Generator allows you to select an Archive Name for a variable if the Archive property of the variable is set to Historic.

For a project you can define several archive names and their properties in the UAG Customization.

Archive Name Dialog

In the tree view of the UAG Customization select Data → Archive Name to open the dialog.

Item Description

Add opens a dialog to add and define a new archive

Modify opens a dialog to modify the currently selected archive

Remove removes the currently selected archive, if not used in a project

Archive Grid grid with 1 line for each defined archive

For each archive the following information is displayed.

Archive Name name of the archive

Description description of the archive

33003669 09/2014 125

Page 126: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Period Value/Unit

You can configure how long data are archived before they are overwritten again.

To configure this duration use Period Value and Period Unit.

Add/modify an Item

Click Add or Modify to open the Add/Modify an item dialog.

Use this dialog to add a new archive or to modify the properties of an archive.

Location location where data is archivedThe value (e.g. directory name) you enter for the location depends on your HMI system.

Period Value integer value > 1, corresponds with the period unit

Period Unit period unit, corresponds with the period valueYou can select 1 of the following units: hour(s) day(s) week(s) month(s)

Item Description

126 33003669 09/2014

Page 127: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Defining PLC

Overview

Under Customization File → PLC the following items can be defined: PLC Family Rack Module User Defined Module Fieldbus

Select PLC Families, Racks and Modules

The standard customization file IATBasic10.osc contains entire lists of PLC families, rack types and HW modules from which the project manager can select the subset of racks and modules which are valid for his projects.

This is done by activating the respective check boxes.

Only the selected PLC families, racks and modules will be offered to the control engineer when he is configuring a project.

PLC Family

Activate the check box in front of a PLC family to use it in your project.

Only the racks and modules that are supported by selected PLC Family will be available for Rack and Module selection.

Rack

The Rack grid displays the Rack Category, Name, Rack Size and Description of all available racks.

Activate the check box in the Used column to use the respective rack in your project.

Only the racks associated with the selected PLC families are available.

33003669 09/2014 127

Page 128: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Example of listed Racks

Module

The Module grid displays the Module Category, Name, Description, INs and OUTs of all available modules.

Activate the check box in the Used column to use the respective module in your project.

Only the modules associated with the selected PLC families are available.

128 33003669 09/2014

Page 129: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

User Defined Module

Unity Application Generator allows furthermore to integrate user defined HW modules:

generic modules (with Unity Pro) Modbus Modules

For further information, please refer to User Defined Modules - Overview (see page 131).

If you activate 1 of the Gateway Modbus/Ethernet racks in the Rack grid, the User Defined Module grid lists additional Schneider Electric Modbus slave devices as complex modules.

Example of listed Modbus slave devices

Name Description

ATV31 Altivar 31 Drive

ATV71 Altivar 71 Drive

ATS48 Altivar 48 Starter

TesysU Adv TesysU Advanced motor Starter

Sepam 40 Sepam 40

Sepam 80 Sepam 80

PM710 Power Logic 710 Monitor

PM820 Power Logic 820 Monitor

33003669 09/2014 129

Page 130: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Fieldbus

Use this item to configure the fieldbus basic settings of your project.

For further information please refer to Fieldbus Dialogs (see page 143).

130 33003669 09/2014

Page 131: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

User Defined Modules - Overview

What are User Defined Modules?

User defined modules are virtual hardware modules that shall be used in the automation project configured with Unity Application Generator but do not belong to the Schneider Automation product catalog.

User defined modules can be either Generic modules (withUnity Pro) Modbus Modules

Generic Modules

Generic modules are user defined hardware modules which are not known by name in Unity Pro.

The administrator adds them to the list of modules in the customization.

He has to specify the following for each generic module: unique name within the customization file number of inputs and outputs number of 0x (%M), 1x (%I), 3x (%IW) and 4x (%MW) registers consumed number of status registers possible rack type (Modbus Plus, Ethernet, Generic)

With the restriction of the possible rack types to Generic the user defined module is defined as a generic module

In the project, such modules can only be configured in generic racks and they are not generated in Unity Pro.

They can not be configured in Quantum/ Premium/ M340/ M580/ Momentum racks and are not entered in the Unity Pro I/O mapping.

The specifications made are only used for the reservation of state RAM addresses and for the addresses of the I/O variables.

After generation, the integration of generic modules have to be completed manually. What the tasks are depends on the type of module.

For example, if you configure Momentum I/O, the data has to be communicated with Peer Cop or I/O Scanner.

33003669 09/2014 131

Page 132: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Modbus Modules

If you activate 1 of the Gateway Modbus/Ethernet racks in the Rack grid of the UAG Customization, the User Defined Module grid lists additional Schneider Electric Modbus slave devices as complex modules (refer to User Defined Module, page 129).

These modules are predefined and can be used with the Modbus/Ethernet Gateway.

You can define additional Modbus modules via UAG Customization → User Defined Modules.

The dialog for Complex I/O modules allows you to define I/O areas and I/O scanner entries. For I/O areas you can define the direction (Input, Output, Input/Output), the start address and the bytes to be written or read.

For further information please refer to Dialog Box (Complex I/O), page 138.

132 33003669 09/2014

Page 133: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

How to Define a Generic Module

Overview

If generic modules shall be configured in the Unity Application Generator project(s), the administrator has to define them in the customization file with the Unity Application customization editor.

Procedure for Defining a Generic Module

For defining generic modules with the Unity Application customization editor follow the steps:

Result

When using this customization file for projects, your user defined generic modules are available in the drop down lists for entering modules.

They can be configured in a project as other hardware modules.

They can only be configured in a generic rack.

For such generic modules no entries are generated in the Unity Pro I/O map. The necessary addresses will be defined in the corresponding PLC as defined for the generic module.

Step Action

1 Open the subgroup User Defined Module.Result: An empty list with the columns Module Category, Name, Description, ... appears.

2 Right-click anywhere in the list and select Add from the context menu.Result: The dialog window Add User Defined Module appears.

3 Enter the information on your generic module in the fields.

NOTE: Take the following into account:

By restricting the possible rack type to only Generic, the user defined module is defined as a generic module.

Fill out the fields very precisely, because the data cannot be checked by Unity Application Generator.

For further information, refer to Add User Defined Module - Dialog Box, page 135.

4 When you have filled out all the fields, confirm with OK.Result: The new generic module is entered in a line of the list.

5 If necessary, revise data with the context menu items Remove and Modify.

6 Save your customization file.

33003669 09/2014 133

Page 134: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Enhanced Ethernet Rack

It is possible to create user defined Ethernet racks which are not supported by default within UAG. An Ethernet rack belongs to an Ethernet communication module (like ETY 4103 or NOE 771-xx). After the creation of an Ethernet rack, the user can assign these Ethernet communication modules. Refer also UAG Basic manual, Enhanced Ethernet Modules (see Unity Application Generator (UAG) 3.3 SP4, a SoCollaborative software, Basics User Manual).

134 33003669 09/2014

Page 135: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Add User Defined Module - Dialog Box

Access

Dialog Box (Digital I/O, Analog I/O, Experts)

Step Action

1 Select PLC → User Defined Modules in the tree view of the UAG Customization editor.Result: An empty list with the columns Module Category, Name, Description, ... appears.

2 Right-click anywhere in the list and select Add from the context menu.Result: The dialog box Add User Defined Module appears.

33003669 09/2014 135

Page 136: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Properties of the dialog box for digital I/O, analog I/O and experts modules

Property Description Options Comment

Module Name name of the user defined module

free text Name has to be unique within the customization file. Choose a free name for a generic

module. For a ModConnect partner module the

name has to be exactly the same as in ModConnect tool.

Module Category

type of module Digital In Digital Out Digital In/Out Analog In Analog Out Analog In/Out Experts Complex I/O

-

Description your description of the user defined module

free text -

Possible Racks rack type in which the user defined module can be configured; corresponds to property Link Type.

Local Remote DIO Link0 DIO Link1 DIO Link2 SY/MAX Generic 800 I/O Ethernet I/O MBP I/O Link0 MBP I/O Link1 MBP I/O Link2 Local

Momentum I/O Bus

With the assignment of the user defined module to a generic rack, it becomes a generic module.For more information on link types see also UAG Basic manual, Topological Model (see Unity Application Generator (UAG) 3.3 SP4, a SoCollaborative software, Basics User Manual).

Change Icon... opens a dialog box to select a bitmap as representation of the module in the Topological Model

*.bmp, *.jpeg, *.jpg, *.gif, *.ico

The icon bitmap is scaled and stored in the customization database.

Change Bitmap...

opens a dialog box to select a bitmap as representation of the module in the Topological Viewer

*.bmp, *.jpeg, *.jpg, *.gif, *.ico

max. size = 32x32 pixelIf no bitmap is selected, a default bitmap, corresponding to the module type, is displayed.

136 33003669 09/2014

Page 137: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Number Inputs number of input connections on user defined module

integer -

Number Outputs

number of output connections on user defined module

integer -

Input Offset offset of the input item

- -

Output Offset offset of the output item

- -

Register 0x, 1x, 3x, 4x (resp. %W, %I, %IW, %MW)

number of 0x, 1x, 3x, and 4x (resp. %W, %I, %IW, %MW) registers needed for user defined module

integer For the number of inputs, outputs and registers, the following is valid: number of outputs has to be the same as

number of registers 0x/%M or 4x/%MW number of inputs has to be the same as

number of registers 1x/%I or 3x/%IW

Status Register 3x, 4x (resp. %IW, /%MW

number of status registers 3x and 4x (resp %IW, %MW) needed for user defined module

integer -

Property Description Options Comment

33003669 09/2014 137

Page 138: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Dialog Box (Complex I/O)

The dialog box displayed after selecting Complex I/O differs from the standard dialog box and is described in the paragraphs below.

Information about all standard properties you can find in the properties table above.

Property Description

I/O Areas maximum number of I/O areas is 8

Use check box allows to define if the I/O Scanner entry will be generated for the module type

I/O Area Name name of the I/O area (I/O scanner zone)

Input/Output list to define the direction of the I/O area (Input, Output, Input/Output) i.e. to read, write or both

Input Slave Index defines the input slave start address of the I/O area

138 33003669 09/2014

Page 139: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

I/O Map Dialog Box

To open this dialog box, activate the I/O Map button in the Add User Defined Module dialog box.

Input bytes counts the bytes to be written for the I/O areaDepending on the direction of the I/O area this property may be disabled.

Output Slave Index

defines the output slave start address of the I/O area

Output bytes counts the bytes to be read for the I/O areaDepending on the direction of the I/O area this property may be disabled.

Delete I/O Area deletes the selected I/O area

I/O Map... opens the I/O Map dialog boxUse this dialog box to define I/O points for an I/O area.

Property Description

33003669 09/2014 139

Page 140: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Properties of the I/O Map dialog box for Complex I/O modules.

After exiting the I/O Map dialog box the Add User Defined Module dialog box shows the number of input and output bytes of the defined module.

Property Description

I/OArea list to select the I/O Areas that should be defined

Number counts the contiguous number of I/O pointsExample: The 2nd to 7th I/O points are all of type INT. Accordingly the BOOL inputs will continue with I/O point number 8.This column is updated from UAG.

Byte counts the byte offset of the data itemsThis column is updated from UAG.

Description name of the I/O point

Data Type offers all standard data types managed from UAG

Quantity counts the number of a sequence of I/O points from addressed typeExample: The defined module maps its input data to 1 REAL data item, 6 subsequent INT data items and 16 subsequent BOOL data items.

Byte Order defines the data format for numeric valuesIntel (LSB first) or Motorola (MSB first)

Add/Modify opens a dialog box to add or modify an item(See dialog box description below).

Remove removes the currently selected item

Input/Output defines the I/O direction (input or output)This option is only available if the direction of the I/O area is set to Input/Output.

Function Block This section is used to define a user function block for processing the data conversation from module raw data to PLC variables.

Use Function Block

If this checkbox is selected, UAG uses a user defined function block for processing the module data instead of standard logic.If unchecked, the other fields of this section are disabled.

FB Name defines the function block name for user defined data processing

Export Unity Pro FB Interface

exports a function block interface definition for Unity according to the definition of the module layout

Get already existing I/O Map from

lists all user defined modules already available in the current project

Existing I/O Areas lists all I/O areas already defined for the module selected via Get already existing I/O Map fromThis list allows to reuse I/O areas defined for another module.

140 33003669 09/2014

Page 141: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Dialog Box (Add an Item)

To open this dialog box, activate the Add/Modify button in the I/O Map dialog box.

Properties of the Add an Item dialog box for Complex I/O modules.

NOTE: Modules are mapped to WORD registers. Data items are mapped to whole WORDs resp. that 2 Bytes/16 Bits are considered as one WORD.

Property Description

Byte Number counts the contiguous number of assigned bytesExample: The defined data item starts with byte number 1.

Bit Number used to select single bits for boolean data items

Data Type offers all standard data types managed from UAG

Byte Order used to select the data format for numeric valuesIntel (LSB first) or Motorola (MSB first)

Quantity sets the number of a sequence of I/O points from addressed typeExample: 1 item in sequence is defined.

Description name of the data item

33003669 09/2014 141

Page 142: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

How to Change the Customization

General

The customization file is the basic information which is utilized by Unity Application Generator. Each time a new project is created, a customization file has to be selected. The selected customization file is copied into the project directory with the same name as the project, with the file extension .OSC.

How to Change the Customization of an Existing Project

Changes to the original customization file will not influence a project. The changes need to be made to the file PROJECTNAME.OSC or the changed customization file has to be copied as PROJECTNAME.OSC.

If the customization file for an existing project is changed, Unity Application Generator will detect this and will offer to analyse the customization. In case of an Error, for example, an existing name does not fit the changed naming convention, Unity Application Generator will show the detected error which has to be corrected manually. Unity Application Generator will show the option to analyse the customization every time the project is opened until every detected error of the customization has been corrected.

142 33003669 09/2014

Page 143: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Fieldbus Dialogs

Section 4.2Fieldbus Dialogs

Introduction

The following section provides information about the dialog boxes for fieldbuses in the Customization Editor.

What Is in This Section?

This section contains the following topics:

Topic Page

Customization Editor Extensions for Fieldbuses 144

Representation of Data for Profibus 146

Actions for Fieldbus Modules 148

I/O Map Dialog Box Description 150

I/O Map Additional Dialog Boxes 152

33003669 09/2014 143

Page 144: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Customization Editor Extensions for Fieldbuses

Introduction

You have to use the Customization Editor for the configuration of the fieldbus basic settings.

The Customization Editor is used to define both

fieldbus module types

and

I/O points

of the existing fieldbus module types.

Module Catalog for Fieldbuses

UAG gets the fieldbus information from a module catalog which will be automatically installed during the UAG installation. This module catalog contains the information about all fieldbus modules which are manufactured by Schneider Electric.

You can use the Customization Editor for your Profibus configuration in the following cases:

If you use a Profibus slave that is not included in the Profibus module catalog delivered by Schneider Electric, e.g. if you use a Profibus slave from another vendor.

If the I/O definition of a Profibus module that is included in the Profibus module catalog does not fit to your Profibus module or is even incorrect. In this case you can overwrite the definition in the catalog by redefining the module in the Customization Editor.

If the Profibus module is generic, i.e. its actual I/O point definition depends on the specific usage of the module.

Fieldbus Extensions in the Tree View

The tree view of the Customization Editor provides an extension to define fieldbus modules. A hierarchical structure with the levels

fieldbus type (e.g. Profibus)

and

slave type (e.g. STB NDP2212)

is provided. This gives you a better overview of the defined modules.

NOTE: The Customization Editor displays only the user-defined fieldbus modules, not the modules being delivered in Schneider Electric’s standard catalog.

If you select the fieldbus module in the tree view, all slave module will be displayed in the list box.

If you select a slave module in the list box and press the right mouse button, the context menu with the entries Add, Modify and Remove will be available to change data.

144 33003669 09/2014

Page 145: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

The following figure shows the tree view in the Customization Editor:

33003669 09/2014 145

Page 146: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Representation of Data for Profibus

Introduction

The data representation of fieldbuses often differs considerably from that of the PLC acting as the fieldbus master.

The following items have to be considered:

Data SizeThe fieldbus modules can have analog values whose size is neither 8 bit, 16 bit nor 32 bit, e.g. 12-bit values are quite common. Furthermore, such values may be packed, so that 2 values share a common byte and a value may not be byte-aligned.

The data representation of fieldbus data is therefore determined by its data type, its size (in bits or bytes), its word address and the bit position within the word. Possible data types are: bit unsigned integer (2.. 32 bits) signed integer (2.. 32 bits) string of various kinds of encoding real (32 bits)

In order to both allow a simple handling of normal modules as well as a more complicated flexible handling of the exceptional modules, the following solution is offered in UAG.Generally, the data type associated with an I/O point of a fieldbus module is restricted to the IEC compliant data types. Furthermore, the automatic handling of the byte order of an I/O point is restricted to the Intel and Motorola formats.The following 2 approaches are provided by UAG to handle the data representation of a fieldbus module in UAG:

Direct ApproachThe direct approach, in which the memory layout and the data format of the I/O points is explicitly defined in the Customization Editor. Based on the defined information UAG can automatically generate code that transforms the module’s data representation into the connected variables and vice versa. This approach is the easiest for you, but it does not cover cases of modules with an unusual memory layout (e.g. 12-bit values).

Function Block ApproachThe function block approach, in which a user-defined function block (DFB) is used to convert the module’s data representation. This approach is more complex for you but provides all flexibility to handle even the most complex modules.For the conversion function block there are a couple of rules concerning the names and data types of function block parameters that you need to follow in order for the function block to be usable by UAG.

146 33003669 09/2014

Page 147: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

For input blocks the input parameter has to be named IN and has to be of data type ARRAY [0..(n-1)] OF BYTE, with n being the number of input bytes of the module. For output blocks the output parameter has to be named OUT.

For input blocks there has to be an output parameter with the same name and data type for each I/O point defined in the module catalog. For output blocks the same holds for the input parameters.

If necessary you can add additional input and output parameters to the function block.The following example shows the input function block. 3 parameters of the fieldbus modules were connected to control module CM8 in equipment EQU1.

The following figure shows the DFB for the input conversion:

33003669 09/2014 147

Page 148: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Actions for Fieldbus Modules

Add Fieldbus Module

If you select the Add entry on the context menu of the list view, the Add Fieldbus Module dialog box, which allows you to define a new type of fieldbus module, will be opened.

The following figure shows an example for the Add Fieldbus Module dialog box:

The dialog box contains the following fields:

Module NameContains the name of the module. You can freely choose the name. The name has to be unique over all fieldbus modules.

Module CategoryShows the category of the modules. You cannot change the category.Note: No other Module Category type than Profibus is available.

DescriptionFree description of the module type.

Possible RacksThe field is disabled and shows the name of the fieldbus slave.

Change Icon...Opens a dialog box to select a bitmap as representation of the module in the Topological Model.

Change Bitmap...Opens a dialog box to select a bitmap as representation of the module in the Topological Viewer.

148 33003669 09/2014

Page 149: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Number inputs (bytes) / Number outputs (bytes)Defines the number of input bytes and output bytes for this module.Note: The number of inputs and outputs has to be equal to the length of the module as defined in the Profibus GSD file.

Inputs Offset / Outputs OffsetNot used for Profibus.

I/O MapOpens the I/O Map dialog box, see also I/O Map Dialog Box Description, page 150.

The Modify Fieldbus Module dialog box is identical to the Add Fieldbus Module dialog box.

Modify Fieldbus Module

If you select the Modify entry on the context menu of the list view, the Modify Fieldbus Module dialog box, which allows you to change an available type of fieldbus module, will be opened.

The Modify Fieldbus Module dialog box is identical to the Add Fieldbus Module dialog box.

The following figure shows an example for the Modify Fieldbus Module dialog box:

33003669 09/2014 149

Page 150: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

I/O Map Dialog Box Description

I/O Map Dialog Box

The I/O Map dialog box is used to define the I/O points of a fieldbus module. You have to open the Add Fieldbus Module or Modify Fieldbus Module dialog box at first in order to have access to the I/O Map button in the section Input / Output, also see Actions for Fieldbus Modules, page 148. Press the button to open the dialog box.

The following figure shows an example for the I/O Map dialog box:

For each I/O point the following fields or actions exist:

Output / InputYou can switch between the Input and Output I/O Map information.

NumberLogical number of the I/O point. If multiple I/O points are defined in a single line, the number of the first I/O point and the number of the last I/O point are displayed separated by a "-" character to indicate that the whole area of numbers is covered by this line.

ByteByte number of the I/O point within the byte string provided by the fieldbus module. If the I/O point is a BOOL type, the bit number (1..8) within the byte is also displayed. This value is empty if a function block is used for this module type.

150 33003669 09/2014

Page 151: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

DescriptionName of the I/O point. If a function block is used for this module type, the description has to be identical to the corresponding parameter name of the function block. In this case, the description has to comply with the appropriate naming rules.

Data TypeData type of the I/O point. All elementary IEC data types supported by Unity Application Generator are supported here.Exceptions: You can not use strings, DDTs or arrays.If no function block is used, the Customization Editor calculates the byte length of each data type so that there is no overlap between the I/O points and that the number of bytes for this module is not exceeded.

QuantityAllows to define multiple I/O points of the same data type in a single entry. The names of the I/O points are a concatenation of the description and an increasing number beginning at 1 (in the example above Counter1 and Counter2). If no function block is used, the I/O points are in contiguous locations.

Data FormatDefines numeric values if Intel format (LSB first) or Motorola format (MSB first) is used. This value is empty if a function block is used for this module type.

The Function Block section is used to define whether a function block is used to convert between fieldbus representation and PLC variables. The following fields exist:

Use Function BlockThis check box defines if a function block is to be used for this module type. Note: This definition can be made independently for input and output direction. It is possible to use a function block for the input direction, but not for the output direction.If the check box is not checked, the other fields in this section are disabled.

FB NameContains the name of the FB type being used for data conversion. This field can not be empty if the Use Function Block check box is selected.

Export FB InterfaceThis button allows you to export the interface of the function block. This export file can then be imported into the PLC programming tool (Unity Pro) and the function block type can be completed. Exporting the FB interface will verify that the function block type complies with the data type and naming rules as defined in the UAG Basic Manual, Representation of Data for Profibus (see page 146).

The Get already existing I/O Map from section is used to use the I/O Map of another fieldbus module as a template. The list box offers you all user-defined fieldbus modules that are available in your project.

The actions of the Add, Modify and Remove buttons is as follows.

33003669 09/2014 151

Page 152: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

I/O Map Additional Dialog Boxes

Add an Item Dialog Box

This dialog box allows you to add an I/O point entry of the I/O Map.

The following figure shows the Add an Item dialog box

You can set the following information:

Byte NumberThe number of the byte of the I/O point in the byte string, provided by the fieldbus module.Note: The field Byte Number is disabled if a function block is used.

Bit PositionThe Bit Position defines the position of the bit in the byte string.If the I/O point is a BOOL type, the bit number (1..8) within the byte is also displayed.NOTE:

The field Bit Position is disabled if a function block is used. The field Bit Position is disabled if the data type is not BOOL.

Data TypeData type of the I/O point. All elementary IEC data types supported by Unity Application Generator are supported here.Exceptions: You can not use strings, DDTs or arrays.If no function block is used, the Customization Editor calculates the byte length of each data type so that there is no overlap between the I/O points and that the number of bytes for this module is not exceeded.

152 33003669 09/2014

Page 153: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Data FormatDefines numeric values if Intel format (LSB first) or Motorola format (MSB first) is used. This value is empty if a function block is used for this module type.NOTE:

The field Data Format is only enabled for the data types INT, UNIT, UDINT, WORD and DWORD.

The field Data Format is disabled if a function block is used.

QuantityAllows to define multiple I/O points of the same data type in a single entry. The names of the I/O points are a concatenation of the description and an increasing number beginning at 1. If no function block is used, the I/O points are in contiguous locations.

DescriptionName of the I/O point. If a function block is used for this module type, the description has to be identical to the corresponding parameter name of the function block. In this case, the description has to comply with the appropriate naming rules.

Modify an Item Dialog Box

The Modify an Item dialog box is identical to the Add an Item dialog box.

Select an available item in the I/O Map dialog box and press the Modify button to open the dialog box.

The following figure shows the Modify an Item dialog box

Remove an Item

You can delete an I/O Map item by pressing the Remove button.

33003669 09/2014 153

Page 154: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Project Maintenance

Section 4.3Project Maintenance

Characterization

Project management inside Unity Application Generator is divided in two major tasks: Setting the Analyzer and generation options Unity Application Generator Version management and project documentation

What Is in This Section?

This section contains the following topics:

Topic Page

Setting Options for Analysis and Generation 155

Version Management and Change Tracking 156

Project Documentation (Report Generator) 159

Troubleshooting 160

154 33003669 09/2014

Page 155: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Setting Options for Analysis and Generation

Introduction

You have options for the way the project is analyzed and if a completely new generation has to be carried out instead of an incremental generation, refer also Overview of Generated Code and Generation Principles, page 238.

Under View → Options you find the tabs General, PLC, Monitor Pro, Analyze Project, Memory Mapper.

Options for Project Analysis

Under the tab Analyze Project you have the possibility to select which parts of the project shall be analyzed and how many details the report has to contain.

NOTE: Here, you may enter, after how many Warning messages the Analyzer has to stop. For unlimited number of Warning messages, enter 0.

Option for New Generation

Under the tabs PLC and Monitor Pro / iFIX you have for each the option Generate completely new (only next generation). If you select this option for PLC or Monitor Pro / iFix, completely new PLC project(s) or Monitor Pro / iFIX application(s) will be generated.

The same option exists for the Memory Mapper to optimize the PLC memory usage.

NOTE: When you carry out a new generation, your old code is saved in a backup, refer also Version Management and Change Tracking, page 156.

Switching Variable Values in Operator Screens

If you select this check box, the scaling values of all the variables in the operator screen files are modified with the values of UAG. If you clear the check box, then UAG does not update the scaling values of variables during generation and the values remain same as in XCR template file of the original operator screen.

WARNINGUNINTENDED EQUIPMENT OPERATION

If you use the option for new generation all manual changes in PLC or Monitor Pro / iFIX will be lost.

Failure to follow these instructions can result in death, serious injury, or equipment damage.

33003669 09/2014 155

Page 156: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Version Management and Change Tracking

Overview

Unity Application Generator allows the user to save different versions of a project. If necessary, it is possible to go back to an older version of the project. In addition, Unity Application Generator keeps track of all changes which have been made in a change history.

Version Management

Besides the possibility to save a project with the Save as... command, the user can create snapshots of the actual status in the Versions dialog, invoked by the menu item Files / Versions.

In opposite to the Save as... command, the version management has two significant advantages: Multiple development steps can be frozen in the same project. Not only the UAG project will be saved, but the according PLC and HMI projects.

In the Versions dialog the actual version can be saved, and stored versions can be restored or deleted. A comment will be attached to each version. The user can enter additional information. The Change History since last saving or the beginning of the project can be displayed. So it is very easy to go back to another version, if the last user modifications did not fulfill her expectations. While an old version is restored, already existing folders are copied in folders with the extension .BAK.

The following informations will be saved: Unity Application Generator project (*.osp) and customization file (*.osc) Unity Application Generator SCoD library files (*.osl) and Template library files (*.ost) Unity Application Generator style sheet files (*.xsl) Generated Unity Pro projects Vijeo Citect projects Monitor Pro projects: Generated HMIs in HMI application path Generated Data Servers in Data Server application path

iFIX projects: Pictures (*.grf in dynamics\pic) HMIs (*.gil in dynamics\pic) DataServers ([ObjectName].* in dynamics and dynamics\pdb) AlarmAreas (AlarmAreas.aad in dynamics\pdb)

156 33003669 09/2014

Page 157: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Change Tracking

Any user action which changes an object in Unity Application Generator will be recorded in the change history. The change history shows the information who has done which changes at what time. The change history can be exported as a comma separated value file (CSV) for further processing e.g. with Microsoft Excel.

If a project is saved as a particular version by Unity Application Generator version management, the change history file will be stored in the saved version but cleared in the current version. With this approach the change history file will contain the changes done since the last version freeze. This is especially useful if a version had been validated and you want to check what has been changed since the last validation. Changes made since validation are recorded in the change history.

Change History for the Project

The Project tab of the Change History dialog provides the following information:

Column Description

Who initiator of the change

When date and time of change

Object Type type of object changed, for example Interlock, Control Module, Process Cell (Physical Level)

Object Name name of object changed, for example eQ01_Motor-Lock, eQ01_Motor (MOT1D1S1), PCell

Changes kind of change, for example Modified, Created, Deleted, Import started/finished

Attribute attribute of object changed, for example Interlock Definition

Old Value value of the attribute before the change

New Value value of the attribute after the change

33003669 09/2014 157

Page 158: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Change History for the Libraries

The Libraries tab of the Change History dialog provides the same columns as the Project tab.

Additionally the Libraries tab provides the following items:

Item Description

Select Library list of libraries included to the current projectUse this list to select the library which change history you want to display.Select All Libraries to display the change history of all libraries included in the project.

Clean button Deletes the change history records from the library.This button is enabled only, if the Libraries tab is enabled.Old change history records can not be restored once they are deleted.The user is asked for confirmation before deleting the change history.

158 33003669 09/2014

Page 159: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Project Documentation (Report Generator)

Overview

Unity Application Generator allows the user to document the project automatically. A report generator is built into Unity Application Generator which creates a project report as Microsoft Word file.

What Will be Documented?

The report generator offers multiple options for the generated report, for example: Table of Contents Physical Model Hierarchy Complete Physical Model Alarm Variables Archived variables Command variables I/O variables PLCs HMIs Network Configuration Instrument List Interlocks Topological Overview Generator Messages Bill of Materials

The generated report can either be a new report or it can be appended to an existing report.

How to Define the Document Layout

When the report is generated, a template file (DOT) has to be selected which will be used by the report generator. Adopting this template file allows the user to design the report according to the user company requirements.

Additional Documentation Options

Other functions in Unity Application Generator can also be used to document additional information: The change history file can be exported as a comma separated value (CSV) file. The message window content (Analyzer, code generator output) can be exported as a comma

separated value (CSV) file.

33003669 09/2014 159

Page 160: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Troubleshooting

Repair Project Database

If your project database has been corrupted, for example due to power outage or a PC crash, use the item File → Repair Project Database for repair.

160 33003669 09/2014

Page 161: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Unity Application Generator (UAG) 3.3 SP4

Template Libraries

33003669 09/2014

Template Libraries

Chapter 5Template Libraries

Template Libraries Feature

This chapter describes the Template Libraries feature.

What Is in This Chapter?

This chapter contains the following sections:

Section Topic Page

5.1 General Information on Template Libraries 162

5.2 Template Library Creation 164

5.3 Libraries Tree of UAG 172

5.4 Template Type Creation 181

5.5 Template Type Instantiation 201

5.6 Template Type Modification 212

5.7 Template Instance Modification 225

33003669 09/2014 161

Page 162: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

General Information on Template Libraries

Section 5.1General Information on Template Libraries

Introduction

Overview

You can use Template Types to create variants of complex functionality by composing basic SCoDs to a group instead of defining specific, complex SCoDs for that functionality.

A Template Type is created in a Template Library.

A Template Library can be used in different UAG projects.

A Template Type consists of: a single parent element (similar to a physical element in a project) control modules with links and interlocks variables

When a Template Type is instantiated in a project there will be a physical element with instances of the Template Type’s control modules and variables.

Template Library Creation

Template Libraries can be created in Customization Editor

(under the Libraries node) or in UAG

(under Libraries tree)

All Template Libraries and SCoD Libraries referred in customization can be viewed in Libraries tree.

Prerequisites

Basic SCoDs Libraries have to be available.

Results

Project specific Template Libraries are accessible inside the Libraries tree of the UAG project.

Libraries database is saved to the libraries directory.

The Customization Editor displays both SCoD Libraries (*.osl) and Template Libraries *.ost.

If 2 projects open a Template Library at the same time, then for the first project the Template Library is opened exclusively. Read-only access is granted to the library in the second project.

162 33003669 09/2014

Page 163: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

General Process Sequence

Stage Description

1 Setting the template library path in the Customization Editor.

2 Including the SCoD Libraries in the Customization Editor.

3 Creating a new Template Library or including an existing Template Library in the Customization Editor.

4 Creating a new Template Library or including an existing Template Library is also possible in UAG.

33003669 09/2014 163

Page 164: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Template Library Creation

Section 5.2Template Library Creation

What Is in This Section?

This section contains the following topics:

Topic Page

Template Library Creation in Customization Editor 165

Template Library Creation in UAG 170

164 33003669 09/2014

Page 165: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Template Library Creation in Customization Editor

Overview

Template Libraries can be created in Customization Editor or in UAG

Template Library creation in Customization Editor is a 2 step process: setting the Template Library path creation of Template Library

Setting Template Library Path

First step is to create library path in which Template Libraries have to be stored.

By default the Template Libraries will be stored in the (<UAG Install Dir>\DB\ directory similar to the SCoD Libraries.

You can change this if required in the Customization Editor under General → Paths using the Modify button.

By providing separate path for Template Libraries, separation of Template Libraries from SCoD Libraries can be achieved.

Template Libraries entry can not be removed from the path list.

Setting Template Library Help File Path

The default path for the Template Help Files is the same as the SCoD Help Files path.

You can change this if required in the Customization Editor under General → Paths using the Modify button.

33003669 09/2014 165

Page 166: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

List of Libraries

In the Customization Editor under General → Libraries you can find the list of Libraries.

SCoD Libraries (present in Libraries path) and Template Libraries (present in the Template Libraries path) are listed.

The list provides the following information:

Column Description

Name name of the library

Depends on name of the SCoD Library, the respective template library is dependent on

Type Template Library or SCoD Library

Version library version

Status status according to the table below

166 33003669 09/2014

Page 167: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Following table shows the status of Library in various scenarios.

Creating Template Libraries

To create a new Template Library, right-click anywhere in the list of libraries and select New Template Library from the context menu.

The New Template Library dialog with the following items is displayed.

By default, any newly created library becomes part of the customization project i.e. it is included automatically.

Status Condition Remarks

HMI is not supported

Template Library is built with SCoD that does not support the selected HMI brand.

Template Library supports only the HMI supported by its dependent SCoD libraries.

SCoD library not compatible

Dependent SCoD Library is built with a newer version of SCoD Editor.

Libraries built with newer versions of SCoD Editor can not be used. In this case the SCoD Library, that is built with newer version of SCoD Editor, will show the status as Built with newer version.

SCoD library not found

One or more dependent SCoD Libraries are not present in the Library path.

The dependent SCoD Libraries need to be present in the Library path.

Built with newer version

Template Library is built with newer version of UAG.

Template Libraries built with newer version of UAG can not be used. For example, Template Library built with current versions cannot be used in later versions..

OK The dependent Libraries are present in the Library path.

Template Library is ready to use.

OK Dependent SCoD Library is built with same/ earlier version of SCoD Editor but Library version is different (earlier/ later).

Project and Template library will be updated when the project is opened. In case of creation of new project only Template Library needs to be updated. In this case Template Library is ready to use.

Property Description

Name name of the new Template LibraryThe file system naming rules are applicable.

Description description of the new Template Library (max. 64 characters)

Version version of the Template Library (read-only)Will be empty until the new Template Library is saved.

Path Name path where newly created Template Library is saved (read-only)

33003669 09/2014 167

Page 168: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Renaming Template Libraries

Renaming a Template Library is neither possible in Customization nor in UAG.

Renaming a file through file system will make the library not usable in the project again, as the project will not find this newly named library.

It will be listed in the list of libraries, if it is in the correct directory after renaming, but will not be included.

It has to be included again manually.

Example:

Supposed you have included a Template Library named MyTemplateLibrary1 in the projects customization file.

Now you rename the file to MyTemplateLibrary2 through file system and keep it in the same directory.

Then, on opening the project´s customization, the message Template Library “MyTemplateLibrary1” does not exist is shown before opening the customization file.

However MyTemplateLibrary2 is listed in the list of libraries but has to be included manually.

Including/Excluding Template Libraries

Including

A Template Library can be included in the Customization Editor under General → Libraries by activating the check box in front of its name.

To select a Template Library, the SCoD Libraries based on which it is built, has to be pre-selected or will be selected automatically on selecting Template Library, provided they are available in the Libraries path.

Excluding

A Template Library can be excluded in the Customization Editor under General → Libraries by deactivating the check box in front of its name, if there is no instance of a template type of this library present inside the UAG project.

168 33003669 09/2014

Page 169: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Selecting SCoD Libraries

A reference of a SCoD Library to the Template Library is implicitly done by adding Control Modules to a template.

A precondition for adding the Control Modules is that the SCoD Library it belongs to, has to have the same supporting HMI as the Template Library and it has to be part of the same project.

Example:

Supposed there is a Template Library UAGBasic_Citect_Template, which is built on SCoDs of UAGBasic_Citect.

In order to select this Template Library, the UAGBasic_Citect Library has to be selected and be available in the libraries path.

The Status column will indicate if this is missing.

If UAGBasic_Citect is already present but not selected then selecting UAGBasic_Citect_Template will include it in customization automatically.

Importing Library Data

During the step of including a Template Library, the Library Import dialog lists the SCoD Libraries referenced by Template Libraries.

Clicking the Import button imports the SCoD Libraries in case SCoD Libraries used in Template Libraries are not yet included.

Including Template Libraries into customization will import the following information into customization not only from SCoD Libraries referred by Template Libraries but also from Template Libraries itself: Access Levels Alarm Groups Alarm Priorities Archive Names Communication Frames Data Types Display Format Measurement Unit Groups

Above mentioned data will also be added from customization and could be used in Template Type variables.

Template Libraries will store above mentioned data to make it independent of customization so that it can be used across different customizations.

While importing Template Library data, if conflicts arise, rules applied to resolve conflicts of SCoD Libraries will be applied to resolve conflicts of Template Libraries.

33003669 09/2014 169

Page 170: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Template Library Creation in UAG

Overview

Template Libraries can be created in Customization Editor or in UAG

Template Libraries can be created in UAG under Project Explorer → Libraries → Template Libraries.

Libraries Tree

To open the Libraries tree click the respective button at the top of the Project Explorer in UAG

( ).

New Template Library

To create a new Template Library right-click Template Libraries node and select New Template Library from the context menu.

Newly created Template Libraries will be included in customization and will appear in the Libraries tree under Template Libraries node.

170 33003669 09/2014

Page 171: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Open Template Library

To open an existing Template Library and display it in the Libraries tree under Template Libraries node right-click Template Libraries node and select Open Template Library from the context menu.

A Template Library present in any path can be opened inside UAG, but it is not included automatically.

It can be included by using Include into Project from the context menu.

If a Template Library is not part of the project’s customization, but is opened only for viewing purpose, then the Template Library will be shown in Libraries tree with a red colored icon.

As a result of this, Template Types of this library can not be edited /modified and you can not create instances under Physical Model tree of UAG.

If the same Template Library is opened in multiple projects then first opened project will acquire the write access.

Rest of the projects will acquire read only access.

The Template Library will be opened for viewing only, with <Read Only> appended to the library name.

Include into Project

To include a Template Library into a UAG project or to open a library, the following conditions have to be satisfied: UAG project has to be opened in read/write mode. The SCoD Libraries on which the Template Library is built has to be available in the

customization path.

If both conditions are satisfied, you can use Include into Project from the context menu to include the Template Library into UAG project.

If you include the Template Library into the project, the Template Library is copied into Template Libraries path specified in customization.

Now the Template Library can be modified and Template Types can be instantiated in UAG.

33003669 09/2014 171

Page 172: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Libraries Tree of UAG

Section 5.3Libraries Tree of UAG

What Is in This Section?

This section contains the following topics:

Topic Page

General Information on Libraries Tree of UAG 173

Template Library Node 174

Template Type Node 179

172 33003669 09/2014

Page 173: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

General Information on Libraries Tree of UAG

Overview

To open the Libraries tree click the respective button at the top of the Project Explorer in UAG

( ).

The Libraries tree by default shows 2 top-level nodes: Template Libraries SCoD Libraries

The Libraries tree lists Template Libraries and SCoD Libraries, included in the project´s customization as well as the Template Libraries which are opened but not included.

Template Libraries Node

Template Libraries are created/opened under Template Libraries node.

Template Libraries included in project´s customization can be modified/edited.

If a Template Library is not part of the project´s customization, but is opened only for viewing purpose, then the Template Library will be shown in the Libraries tree with a red colored icon.

A Template Library is a collection of Template Types.

A Template Type is a logical grouping of control modules, variables and Physical Elements.

For further details please refer to Template Library Creation in UAG (see page 170).

SCoD Libraries Node

All SCoD libraries included in project´s customization are displayed under this node.

This helps to distinguish between SCoD libraries and Template Libraries.

Modification of SCoDs is only possible in the SCoD Editor.

It is possible to open the SCoD Editor in read-only mode via the respective icon in the UAG tool bar and the menu item showing the selected SCoD.

No context menu is available for this node.

Context Menus

Context menus are available for the following nodes the Libraries tree: Template Libraries node Template Library node Template Type node Control Modules under Template Types

To open a context menu, right-click the respective node.

33003669 09/2014 173

Page 174: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Template Library Node

Overview

To open the context menu, right-click the Template Library node.

Context Menu

The context menu provides the following items: New Template Type Open Template Type List Save Save As... Discard Changes Close Include into Project Exclude from Project Paste Report Export Import Properties

New Template Type

New Template Type can be created in a Template Library using this item of the context menu.

For detailed information please refer to Creating a New Template Type (see page 183).

Save

A Template Library can be saved using this item of the context menu.

You have to confirm the save operation.

Saving a Template Library will increment the version i.e. it will override the previous time stamp on which library was saved with the current time stamp.

Version will change only, if any of the Template Types was modified. Else saving will not change the version of the Template Library.

After saving, if the project is opened, changes in a Template Type are propagated to its instances in the project.

For detailed information please refer to Saving Template Type Modifications (see page 220).

174 33003669 09/2014

Page 175: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Save As...

A Template Library can be saved to the Template Libraries path or to an arbitrary location using this item of the context menu.

Saving a Template Library opened from an arbitrary location to the Template Libraries path or vice versa, depending on the Name, you will get the following results:

Saving a Template Library opened from Template Libraries path to Template Libraries path, depending on the Name, you will get the following results:

Saving a Template Library opened from arbitrary location to arbitrary location, depending on Path and Name, you will get the following results:

Name Result

same Library will be saved but will not be loaded into the Libraries tree.

different The newly created Template Library will be loaded into the Libraries tree with <Read Only> appended to the library name

Name Result

same Save As will behave like Save.

different The newly created Template Library will be loaded into the Libraries tree with <Read Only> appended to the library name

Path Name Result

same same Message displayed:Cannot write to file <Directory>\TemplateLib.ost!The file was opened in read-only mode!

same different The newly created Template Library will be loaded into the Libraries tree with <Read Only> appended to the library name.

different same Library will be saved but will not be loaded into the Libraries tree.

different different The newly created Template Library will be loaded into the Libraries tree with <Read Only> appended to the library name

33003669 09/2014 175

Page 176: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Discard Changes

The changes that have been done on the Template Library until the last save operation can be discard using this item of the context menu.

Close

Template Libraries, which are not included in the project´s customization (having red colored icon), can be removed from the Libraries tree using this item of the context menu.

Include into Project

Template Libraries can be included into the current project using this item of the context menu.

This item of the context menu is enabled only if you have opened the UAG project in read/write mode and Template Library is not yet included in the current project.

After selecting this context menu item a confirmation message is displayed.

If the you confirm, the Template Library will be included in the project by adding it into the library list of the customization.

If the Template Library was opened from a location other than the Template Libraries path specified in customization, the Template Library file will be copied into this path.

Exclude from Project

Template Libraries can be excluded from the current project using this item of the context menu.

This item of the context menu is available for Template Libraries which are included into project.

This item of the context menu is enabled only if you have opened the UAG project in read/write mode, the library is included in the current project and there are no template instances in the current project.

After selecting this context menu item, a confirmation message is shown.

If there are unsaved changes you can choose to save or discard these changes.

An excluded library is visible in Libraries tree but modifications are not allowed on it.

Paste

Template Types can be pasted on a Template Library using this item of the context menu.

Uniqueness of name will be checked before pasting.

176 33003669 09/2014

Page 177: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

The Adjust Object Names dialog is displayed, which allows you to adjust the names (even if name is unique).

Only after providing a unique template name, paste operation succeeds.

Report

Information on the Template Types of a Template Library can be printed using this item of the context menu.

Export

The Template Types of a selected Template Library can be exported using this item of the context menu.

The Control Modules, Links, Interlocks, Variables and Properties of the Template Types are exported, too.

Import

Template Types can be imported into a selected Template Library using this item of the context menu.

The Control Modules, Links, Interlocks, Variables and Properties of the Template Types are imported, too.

Properties

The properties of a selected Template Library can be seen using this item of the context menu.

33003669 09/2014 177

Page 178: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

None of the properties except Description can be edited.

178 33003669 09/2014

Page 179: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Template Type Node

Overview

To open the context menu, right-click the Template Type node.

Context Menu

The context menu provides the following items: New Control Module Open Control Module Open Variables Open Interlocks Open Links Open Property List Copy Paste Delete Export Properties

New Control Module

The dialog to create a new Control Module can be displayed using this item of the context menu.

The dialog to create a new Control Module under a Template Type is exactly the same as for creating a new Control Module under a functional physical element (for example Equipment Module).

Open Control Module

The Control Module list can be displayed using this item of the context menu.

The Control Module list displays the Control Modules under the selected Template Type.

Open Variables

The Variable Viewer can be displayed using this item of the context menu.

By default, it shows the list of variables under the selected Template Type.

You can change the scope of the Variable Viewer to the whole library and even to project objects, by selecting from the tree opened with the Variable scope list in the Variable Viewer window or by dragging-and-dropping objects to the window.

Open Interlocks

The Interlocks list can be displayed using this item of the context menu.

33003669 09/2014 179

Page 180: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Open Links

The Links list can be displayed using this item of the context menu.

Open Property List

The Property list can be displayed using this item of the context menu.

The Property list displays the properties defined for the selected Template Type.

For detailed information please refer to Adding Properties to a Template Type (see page 188).

Copy

The Template Type can be copied using this item of the context menu.

Paste

A copied Control Module can be pasted to the Template Type using this item of the context menu.

Delete

The selected Template Type can be deleted using this item of the context menu.

Before deleting the Template Type, a confirmation message is displayed.

After deleting Template Types and saving the Template Library, the deletions are propagated to template instances (if any) of this Template Type in the project.

For details please refer to Saving Template Type Modifications (see page 220).

Export

The selected Template Type and its properties can be exported using this item of the context menu.

The Control Modules, Links, Interlocks and Variables of the selected Template Type are exported, too.

Properties

The Properties dialog of the selected Template Type can be displayed using this item of the context menu.

180 33003669 09/2014

Page 181: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Template Type Creation

Section 5.4Template Type Creation

What Is in This Section?

This section contains the following topics:

Topic Page

General Information on Template Type Creation 182

Creating a New Template Type 183

Associating a Picture Template or HMI Symbol to Template Type 184

Adding Control Modules to a Template Type 185

Adding Properties to a Template Type 188

Adding Free Variables, Links and Interlocks to a Template Type 195

Naming Convention and Name Creation Rules for Template Type 196

Creating a Template Type from a Functional Physical Element 197

Creating a Template Type from an Existing Template Type 199

Importing Template Types 200

33003669 09/2014 181

Page 182: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

General Information on Template Type Creation

Overview

Template Types are created and modified in the Libraries tree in a UAG project.

A Template Type is represented as a child node of a Template Library in this tree.

Template Type Creation

The creation of Template Types is completely separated from the creation of SCoDs and no knowledge about the creation of SCoDs will be necessary to create a Template Type.

Since Template Types represent user-defined functionality of a certain category, they are generally assigned to a user-defined library in the context of UAG project development.

Prerequisites

Basic SCoDs Libraries have to be available. At least 1 Template Library has to be available in the Libraries tree.

Results

Template Types are created and saved in a Template Library. Template Types contain Control Modules and their instantiated sub-elements (variables, links,

interlock logic and properties).

General Process Sequence

NOTE: A Control Module has to have a SCoD (Control Module Type) assigned when used in a Template Type.

Stage Description

1 Creating a new empty Template Type.

2 Adding Control Modules to the newly created Template Type

3 Adding free variables to the Template Type

4 Defining properties for the Template Type.

5 Adding interlock logic for the member Control Modules of the Template Type.

6 Creating Links between the member Control Modules of the Template type.

7 Saving the Template type.

182 33003669 09/2014

Page 183: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Creating a New Template Type

Overview

A new Template Type can be created by selecting the New Template Type from the context menu of a Template Library.

After editing the properties click OK or Apply to create the new Template Type.

The newly created Template Type will be displayed in the Libraries tree, under the respective Library node.

Creating a Template Type

To create a new Template Type, right-click a Template Library node and select New Template Type from the context menu.

The New Template Type dialog with the following items is displayed.

Validation

The following rules apply: Template Type name must not contain special characters. Template Type name has to be unique inside the Template Library. Description must not be empty.

Property Description

Name name of the Template Type1 to 32 characters or numbers can be entered.Name can also start with a number.No special characters are allowed.

Description description of Template Type (max. 64 characters)

Version version of the Template Type (read-only)Will be empty until the new Template Type is saved.

HMI Symbol Configuration

By default HMI Symbol of members is selected.You can select the kind of HMI representation you want to provide for the Template Type.For detailed information, refer to Associating a Picture Template or HMI Symbol to Template Type (see page 184).

Help File Opens the Open File dialog to browse and select a help file containing information about the Template Type for the user in the UAG project (displayed with the Help on Type button).Help file can be of any type.

33003669 09/2014 183

Page 184: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Associating a Picture Template or HMI Symbol to Template Type

Overview

Every Template Type can have an HMI representation.

The Template Type can be represented in one of the following ways: by a single picture template (Picture Template) by a single symbol (HMI Symbol of Template) by using the individual symbols of the member Control Modules (HMI Symbol of Members) no HMI-representation (None)

By default the HMI Symbol of Members is selected.

Picture Template

If you select Picture Template for the HMI Symbol Configuration property of a Template Type, you can configure any number of picture templates for the Template Type.

Click the Add button to enter an appropriate name directly or to browse for a picture template.

One of the picture templates can be configured as the default one.

Support of Picture Templates depends on the HMI system.

HMI Symbol of Template

If you select HMI Symbol of Template for the HMI Symbol property, you can configure any number of HMI symbols for the Template Type similar to associating HMI symbols to Control Modules.

HMI Symbol of Members

If you select HMI Symbol of Members for the HMI Symbol property, the HMI symbols of the member Control Modules will be used to represent this Template instance in the SCADA.

In this case you will be allowed to select from the list of the HMI symbols of the member Control Modules in the Template instance.

None

If you select None for the HMI Symbol property, there will be no HMI representation associated with the Template instances.

184 33003669 09/2014

Page 185: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Adding Control Modules to a Template Type

Overview

Control Modules can be added to a Template Type in one of the following ways: Using New Control Module of the Template Type node´s context menu.

(For the context menu, refer to Template Type Node (see page 179)). Copying and pasting existing Control Modules from a UAG project or from existing Template

Types. Dragging-and-dropping existing Control Modules from the opened UAG project or from existing

Template Types. Dragging a SCoD from the SCoD Libraries of the Libraries tree to the Template Type node. Using Import of the Template Library node´s context menu.

NOTE: Master/Slave relationship established between member Control Modules can not be changed in a Template instance.

New Control Module

To add a Control Module, right-click a Template Type node and select New Control Module from the context menu.

The New Control Module dialog with the following items is displayed.

Property Description

Control Module Type

SCoD type of the new Control ModuleThe SCoDs present in the SCoD Libraries are listed.Not_Assigned is not available in this list.

Control Module Name

name of the Control Module1 to 32 characters or numbers can be entered.Name can also start with a number.No special characters are allowed.Control Module Name need not adhere to Naming Conventions specified for UAG project.

Control Module Description

description of the control module (max. 32 characters)

Help on Type Opens the help file for the selected SCoD, if available.

Comment Opens the Comment dialog, to enter comments for the Control Module.

Documents Opens the Document references dialog, to enter document references for the Control Module.

HMI Symbol set of HMI symbols as configured in the SCoD

33003669 09/2014 185

Page 186: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Validation

The following rules apply: Control Module name must not contain special characters. Control Module name has to be unique inside the Template Type. Control Module description must not be empty. Control Module Type has to be selected.

Copying and Pasting Existing Control Modules

Control modules can be added to a Template Type by copying and pasting existing Control Modules from a UAG project or from existing Template Types.

Copying and pasting is allowed across projects.

There is no restriction that customization has to be same but SCoDs of Control Modules to be pasted has to be referred in receiving project´s customization.

Multiple Control Modules can be selected from the Control Module lists of UAG Physical Model.

The following rules apply to copy/paste: Only Links and Interlocks that exist among the selected set of Control Modules will be copied.

Links between a selected Control Module and any other not selected Control Module will not be copied and the interlock logic that uses variables of other Control Modules, which were not copied, will be copied as a comment. Links and Interlocks will be copied only, if you activate the With Links and With Interlocks check boxes present on the Paste dialog.In case any Links and Interlocks were not copied, you are informed by the Paste dialog.

Copy/paste across projects is allowed only, if the HMI supported by the Template Library and the UAG project is the same.

If a Control Module has multiple fields in the name (according to the naming convention defined), then they will be converted to a single field by concatenating the different field values.You are allowed to edit the names in the paste dialog.

Control Module name uniqueness will be verified before pasting. Master/Slave relationship between Control Modules will be maintained if both, master and slave

Control Modules, are copied/pasted. Control Modules for which a Control Modules type is not assigned (type less Control Modules)

can not be pasted on a Template Type.In this case a confirmation message will be displayed.

The content of the variable properties Alarm Timer Mode and Alarm Timer will be cleared while copying a variable (maybe along with its parent object), if the variable’s Alarm Timer Mode property is set to Variable and the Alarm Timer is referring to another variable that does not exist in the target Template Type.

186 33003669 09/2014

Page 187: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Dragging-and-Dropping Existing Control Modules

Control modules can be added to a Template Type by dragging-and-dropping existing Control Modules from the currently opened UAG project or from existing Template Types.

Multiple Control Modules can be dragged from the Control Module lists of UAG Physical Model.

Rules applied for drag-and-drop are similar to those for copy/paste with the following additions: Drag-and-drop across projects is not allowed. Original Control Modules are not removed from the UAG project as a result of drag-and-drop.

Dragging a SCoD from the SCoD Libraries

The SCoD Libraries of the Libraries tree display the SCoDs available in different SCoD libraries that are included in the UAG project.

A SCoD can be dragged onto a Template Type to add an instance of that SCoD to the Template Type.

NOTE: SCoDs can be instantiated by dragging-and dropping SCoDs from the Libraries tree to the UAG Physical Model as well.

Importing Control Modules

Control Modules can be added to a Template Type by importing Control Modules from a file. The receiving Template Type has to be stated in the import file.

There is no restriction that customization has to be same but SCoDs of control modules to be imported has to be referred in project customization.

Step Action

1 Select a SCoD whose instance needs to be created.

2 Drag this SCoD onto the Template Type.Result:The New Control Module dialog is displayed with the Control Module Type property already selected.

3 Enter values for other properties and click OK or Apply.Result:The selected SCoD instance will be added to the Template Type and the Libraries tree will be refreshed.

Step Action

1 Right-click a Template Library node in the Libraries tree.

2 Select Import from the context menu.

3 Browse and select a valid import file that contains Control Modules for a Template Type of the library.

33003669 09/2014 187

Page 188: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Adding Properties to a Template Type

Overview

Similarly to adding properties to a SCoD you can add properties to a Template Type by: by defining new properties selecting properties from member Control Modules

You can add, delete or modify properties using the Property List dialog.

Property List Dialog

To open the Property List dialog, right-click a Template Type and select Open Property List from the context menu.

This dialog displays the Template Type properties that are already defined. Initially this list will be empty.

188 33003669 09/2014

Page 189: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Property List Editing

You can edit variable assignments for the Property List directly to define a new property or modify an existing property.

You can not edit properties which are added using Add Properties From Member Control Modules.

Properties which can not be edited are displayed in gray color.

Property List Context Menu

To open the context menu, right-click in the Property List dialog.

The context menu provides the following items:

Column Description

Name name of the propertyTo create a new property, right-click into the window and select New from the context menu.

Variable name of the variable selected for this propertyEditing the Variable column displays a browse button.Click this button to launch the Variable Viewer in a restricted view-only mode with the Template Type as Scope.

Variable Property variable property selected for this propertyThis list is enabled after a variable is selected.It lists the available properties of the variable except those which are already used in any other property configuration.You can select any of the listed properties.

Property Tab tab page selected for displaying the propertyYou can either create a new tab name or select an existing tab.There is no limit on the number of tabs that can be added.To rename an existing tab, you have to use the Template Property dialog.

Position display position of the property on the selected tab pageTo define the order of tabs, you have to use the Template Property dialog and move the tabs by drag-and-drop.

Item Description

New Opens the Template Property dialog to define a new Template Type property.

Add From Member Control Modules

Opens the Add Properties From Member Control Modules dialog to select from the SCoD properties of member Control Modules.

Delete deletes a Template Type propertyYou have to confirm the delete operation.

Properties Opens the Template Property dialog to access the Template Type properties.

33003669 09/2014 189

Page 190: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Template Property Dialog

To open the Template Property dialog, right-click in the Property List dialog and select New or Properties from the context menu.

The Template Property dialog provides 2 tabs: General tab Position tab

Template Property Dialog, General Tab

The General tab of the Template Property dialog provides the following items:

Property Description

Caption name of the Template property1 to 32 characters or numbers can be entered.By default, variable name followed by space followed by property name is displayed. Can be edited.

Variable details of variable selected for the Template propertyThe parent name is shown in the text box along with the variable name.Format: Variable Name - Parent Name (Parent Type).Parent type in this case can be Template or Control Module.

190 33003669 09/2014

Page 191: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

The following rules apply: Caption must not be empty. Caption has to be unique. Variable has to be selected. Variable property has to be selected.

Select Selects a variable for this Template property from a list of variables available under the Template Type.Variable Viewer is displayed with the Template Type as Scope and scope can not be changed.

Description description of the selected variable (read-only)

Property list of properties available for the selected variable

Property Description

33003669 09/2014 191

Page 192: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Template Property Dialog, Position Tab

You have to create the property first by entering values in the General tab before you can set the position of the property on the tab page using the Position tab.

The Position tab of the Template Property dialog provides the following items:

Property Description

Name name of the property tab (max. 32 characters)You can edit the tab or rename an existing tab.

Add Adds a new tab.There is no limit on the number of tabs that can be added.

192 33003669 09/2014

Page 193: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Use the Position tab to set the property tab and position for the new Template property.

Click on a tab to select the tab for the property and click on any of the position buttons to assign that position for the property.

You can select a position even if it is already assigned to another property.

In this case it is your responsibility to assign a new position for the property that was present earlier at that position.

The Property List dialog will be refreshed to display the newly added property.

Template Property Dialog, Tab Order

Drag-and-drop one of your defined property tabs to the desired position to change the order of the tabs.

Example:

Drag-and-drop Tab2 to Tab1 to change position of Tab2 from 2 to 1.

Automatically position of Tab1 is changed from 1 to 2.

Add Properties From Member Control Modules Dialog

Use this dialog to add Template Type properties by picking them from the property list of member Control Modules.

To open this dialog, right-click in the Property List dialog and select Add From Member Control Modules from the context menu.

Remove Removes a tabA tab can be removed only if no properties are assigned to it.The button is disabled if the currently selected tab can not be removed.

Tabs Select a tab and a position for the property.By default the first available tab and position is selected.12 positions are available for each tab.

Property Description

33003669 09/2014 193

Page 194: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Any changes made in the SCoD properties will be reflected in the properties added from the member Control Modules.

This dialog displays the properties of the member Control Modules of the Template Type. The properties that are already selected for a Template Type are displayed as checked.

Each property tab can contain a maximum of 12 properties.

By default, a property is assigned to the next available position on the respective property tab.

You can relocate the property position using the Position tab of the Template Property dialog.

NOTE: Inheritance relationships defined between properties of SCoDs will be maintained in properties added from SCoDs.

194 33003669 09/2014

Page 195: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Adding Free Variables, Links and Interlocks to a Template Type

Overview

To Template Types you can add free variables, links and interlock logic.

Adding Free Variables

Right-click a Template Type node in the Libraries tree and select Open Variables from the context menu.

You can add free variables to a Template Type using the now displayed Variable Viewer.

By default the Variable Viewer is displayed with the Template Type as Scope showing the list of variables under the selected Template Type.

Select New from the context menu of the Variable Grid to open the New Variable dialog. Use this dialog to add new free variables.

Adding Links

Right-click a member Control Module node in the Libraries tree and select Open Link from the context menu to open a window displaying the pins to which variables can be dragged.

Open Link is available only for member Control Modules having Not Connected pins.

You can create links for the member Control Modules using the variables that belong to the Template Type or its member Control Modules.

Adding Interlocks

Right-click a member Control Module node in the Libraries tree and select Open Interlock from the context menu to open the graphical interlock editor.

Open Interlock is available only for member Control Modules having pin usage type Interlock.

You can create interlocks for the member Control Modules using the variables that belong to the Template Type or its member Control Modules.

Interlock has to be fully configured. No open pins are allowed on the graphical interlock editor while saving the interlock. You can not save partial interlock definition.

33003669 09/2014 195

Page 196: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Naming Convention and Name Creation Rules for Template Type

Overview

Fixed Naming Conventions and Name Creation Rules are applied within Template Types. But when Template Types are instantiated in a project, the rules defined in the project’s customization are applied instead.

Naming Convention

For names of Template Types, variables and Control Modules under a Template Type, 1 to 32 alphanumeric characters can be entered.

Names can also start with a number.

No special characters (like underscore characters) are allowed.

Name Creation Rules

The following rules are applied:

Variable/Alarm Text Rule

Control Module variable in a Template Type

Template Name + _ + Control Module Name + _ + Variable Name

free variable in a Template Type

Template Name + _ + Variable Name

default alarm text for a Control Module variable

Variable Description + - + Control Module Description + - + Template Description

default alarm text for a Template Type variable

Variable Description + - + Template Description

196 33003669 09/2014

Page 197: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Creating a Template Type from a Functional Physical Element

Overview

You can create a new Template Type directly from an existing Functional Physical Element in an UAG project. (A Functional Physical Element is a functional group of Control Modules for example an Equipment Module).

You can create a new Template Type by: copy and paste drag-and-drop using the context menu of a Functional Physical Element

Copying and Pasting

An existing Functional Physical Element can be copied and pasted into any of the Template Library nodes of the Libraries tree.

A Functional Physical Element can be copied from any project.

The following rules apply: The HMI supported by the Template Library and the UAG project is the same. Control Modules for which a type is not assigned (type less Control Modules) can not be pasted.

In this case a message will be displayed to confirm proceeding without the type less Control Modules.

Control Module names longer than the maximum length allowed are truncated.If a Control Module has multiple fields in the name, then it will be converted to single field by concatenating the different field values.

Control Module name uniqueness will be verified before pasting. Only links and interlocks that exist among the selected set of Control Modules will be copied.

Links between a selected Control Module and any other not selected Control Module will not be copied and the interlock logic that uses variables of other Control Modules, which were not copied, will be copied as a comment.In case any links and interlocks were not copied, you are informed by a message.

The free variables of the Functional Physical Element are copied and created as free variables of the new Template Type.

Functional Physical Elements having any physical elements as children can not be pasted.In this case a message will be displayed to confirm proceeding without the child physical elements.

33003669 09/2014 197

Page 198: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Dragging-and-Dropping

An existing Functional Physical Element can be dragged onto any of the library nodes of the Libraries tree.

Dragging-and-dropping is allowed only from the currently opened UAG project.

The following rules apply: Dragging-and-dropping does not remove the dragged Functional Physical Element from the

UAG project. For the other rules that apply, please refer to the section Copying and Pasting above.

Using the Context Menu

For the rules that apply, please refer to the section Copying and Pasting above.

Step Action

1 Copy a single Functional Physical Element from a UAG project.

2 Right-click on any of the Template Library nodes in the Libraries tree and select Paste from the context menu.Result:The New Template Type dialog is displayed.

3 Enter valid values for the mandatory properties and click OK to complete the creation of the new Template Type.

Step Action

1 Right-click a Functional Physical Element in the UAG project and select Create Template from the context menu to open the New Template Type dialog.

2 By means of the Library list of the dialog, select one of the Template Libraries included in the project.

3 Enter valid values for the mandatory properties and click OK to complete the creation of the new Template Type

198 33003669 09/2014

Page 199: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Creating a Template Type from an Existing Template Type

Overview

You can create a new Template Type by copying an existing Template Type.

A Template Type can be copied from different Template Libraries.

Rules

The following rules apply to copy/paste: The HMI supported by the target and source Template Libraries have to be the same. The target Template Library has to have all the basic SCoD library references needed by the

copied Template Type. It will be verified that the Template Type names are unique in the target library.

NOTE: Paste will be disabled if validation for the first 2 rules above is not met.

Copy/Paste

Step Action

1 Copy an existing Template Type.

2 Right-click on any of the Template Libraries available in the Libraries tree.

3 Select Paste menu from the context menu.Result:The Paste dialog is displayed.

4 Make the new Template Type name unique inside the target library and click OK to complete creation of the new Template Type.

33003669 09/2014 199

Page 200: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Importing Template Types

Overview

You can import Template Types from an import file.

Import is allowed only if the import file contains Template Types built for the same HMI system as that of currently selected Template Library.

The target Template Library has to have all the basic SCoD library references required by the imported Template Type

Import

Right-click a Template Library node in the Libraries tree and select Import from the context menu to import Template Types.

This opens the Open File dialog to browse and select the file to be imported.

200 33003669 09/2014

Page 201: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Template Type Instantiation

Section 5.5Template Type Instantiation

What Is in This Section?

This section contains the following topics:

Topic Page

General Information on Template Type Instantiation 202

Naming Convention and Name Creation Rules for Template Type Instances 204

Creating Template Type Instances with Context Menu 207

Creating Template Type Instances by Drag-and-Drop 210

Viewing Template Type Instances 211

33003669 09/2014 201

Page 202: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

General Information on Template Type Instantiation

Overview

Template Types contained in the Template Libraries, associated with a project, can be instantiated as a Functional Physical Element (e.g. Equipment Module) inside the Physical Model tree.

The member Control Modules, variables, links and interlocks of the Template Type are also created in the project.

Template Type Instantiation

Template Types enables you to predefine Functional Physical Elements (e.g. Equipment Modules) ready to be used in a project, simply modify and adapt a project by means of this modular conception.

Prerequisites

Template Libraries, containing predefined Template Types, have to be available.

The Template Libraries have to be associated with the project through project customization.

Results

Instantiated and parameterized Control Modules ready for interconnection with variables in the Physical Model or with objects in the Topological Model.

General Process Sequence

Remarks/Hints

Take the following remarks into account: Using the context menu items Open Interlocks or Open Links on a Template instance node,

the interlocks and links of the member Control Modules, that have been left open (i.e. undefined) in the Template Type, are offered.Internal links or internally linked interlocks between member Control Modules are hidden in the project.Variables can be associated with links and interlocks.Pin names displayed in links or interlocks window will be prefixed with member Control Module name.

The members of a Template instance belong to the same PLC and will be generated in the same PLC section.

Step Action

1 Creating a Template instance in the Physical Model tree.

2 Adjusting the names of member Control Modules according to naming convention of the respective level.

202 33003669 09/2014

Page 203: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

As far as the execution order of the function blocks to be generated in the PLC program for the member Control Modules of a Template Type is not influenced by the predefined connections, the execution order is defined by the arrangement of the Control Modules in the Physical Model tree.This means that the member Control Modules displayed first in the sub-tree shall be executed first in the PLC section.

33003669 09/2014 203

Page 204: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Naming Convention and Name Creation Rules for Template Type Instances

Naming Convention

The instance of a Template Type is handled as a Functional Physical Element (e.g. an Equipment Module) in the Physical Model.

The naming convention as defined in the project customization is applied.

Naming Convention According to Level

A Template Type instance has a name according to the naming convention for the particular level at which it is created.

Example:

Suppose there are 4 levels in the project (level1 to 4) and the Template Type instance is created at level 4, then the instance will follow the naming convention of level 4.

Member Control Modules have to follow the naming conventions defined for all Control Modules.

Checking the Naming Convention

Naming conventions for the Template Type and its member Control Modules are checked automatically while creating a Template Type instance. If naming convention for the Template Type is not satisfied, the dialog remains open allowing to

adjust the name. If naming convention for the Template Type is satisfied but not for member Control Modules,

the Adjust Object Names dialog is displayed.You have to adjust the names of the member Control Modules accordingly and click OK to complete the creation of Template Type instance.If you click Cancel, the Template Type instance dialog remains open and Template Type instance is not created.

Once Control Module name conflicts are resolved using the Adjust Object Names dialog, UAG will keep track of the resolved names and use it for resolving name conflicts during subsequent instantiation of the same Template Type.

If UAG is not able to resolve name conflicts while instantiating same Template Type at a different physical level, you will be prompted to resolve the naming conflicts again.

204 33003669 09/2014

Page 205: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Properties Control Module

The Properties Control Module dialog will show the Template Type Control Module name in the following format:

<Template Library Name>:<Template Type Name>\<Member Control Module Name>.

For Control Modules created individually in the project, this information is not displayed.

NOTE: Changes in the member Control Module name in a Template Type instance will lead to a message asking whether the new name should be applied to other existing instances of that Control Module of the same Template Type as well.

You can edit the actual Control Module name in the Properties Control Module dialog.

33003669 09/2014 205

Page 206: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Truncating the Description

If the length of the Control Module description in the source Template Type is greater than Control Module description length defined in the project customization, the description of a Control Module in the Template Type instance is truncated.

NOTE: Changes in the Template Type Control Modules description will not be propagated to its instances, but newly created instances will have updated descriptions.

Name Creation Rules

The name creation rules as defined in the project customization are applied.

Name Creation Rules According to Level

A Template Type instance has a full name according to the name creation rule for the particular level at which it is created.

Example:

Suppose there are 4 levels in the project (level1 to 4) and the Template Type instance is created at level 4, then the instance will follow the name creation rule of level 4.

206 33003669 09/2014

Page 207: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Creating Template Type Instances with Context Menu

Overview

Template Types contained in the Template Libraries, associated with a project, can be instantiated as a Functional Physical Element (e.g. Equipment Module) inside the Physical Model tree.

Template Types of the Template Libraries displayed in the Libraries tree are available for creating Template Type instances.

You can create Template Type instances by: using the context menu of a Physical Model tree node that is able to have Functional Physical

Elements as child elements dragging-and-dropping Template Types from a Template Library to the Physical Model tree.

New Level Dialog

To create a Template Type instance, right-click a Physical Model tree node that is able to have Functional Physical Elements as child elements and select New <Level Name> (e.g. New Equipment Module) - here simply called New Level - from the context menu.

The New Level dialog with the following items is displayed.

Item Description

Use Template Creates a Template Type instance, if selected.Else a regular Physical Element is created.If this check box is activated Source Template is enabled.After clicking OK or Apply, the Use Template check box is disabled and you can not change the Template Type.

Source Template

Selects the Template Type for the new member Control Module.Displays the Template Types of the Template Libraries included in the project customization.Enabled only if the Use Template check box is activated.After clicking OK or Apply, the Source Template list is disabled and you can not change the Template Type.

Name name of the Physical Element/Template Type instance

Description description of the Physical Element/Template Type instance

Help On Type Opens the help file associated with this Template Type.

Comment Opens the Comment dialog in UAG to enter comments for Physical Element/Template Type instance.

Documents Opens the Document references dialog in UAG to enter document references for Physical Element/Template Type instance.

PLC Selects the PLC to be assigned to this Physical Element/Template Type instance.

PLC Section Name

Assigns a section name to Physical Element/Template Type instance.

33003669 09/2014 207

Page 208: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

The Basic tab of the dialog is visible for regular Physical Elements as well as for Template Type instances.

Activate the Use Template check box to enable the Source Template list.

The Source Template list displays the Template Types of the Template Libraries included in the project customization.

Select a Template Type to create a Template Type instance.

After clicking OK or Apply, the Source Template list and the Use Template check box are disabled and you can not change the Template Type.

HMI Representation

Every Template Type can have an HMI representation.

The Template Type can be represented in one of the following ways: by a single picture template by a single symbol by using the individual symbols of the member Control Modules no HMI-representation

Please refer to Associating a Picture Template or HMI Symbol to Template Type (see page 184).

Picture Template Configuration

Every Template Type instance can have a picture object associated with.

If HMI Symbol Configuration type of the Template Type is set to Picture Template, once a picture object is assigned to a Template Type instance, the same picture object can not be used for another Template Type instance or a Functional Physical Element.

One or more picture template is assigned to a Template Type as described in section Creating a New Template Type (see page 183).

You can select the picture template for the Template Type instance using the Picture Template list of the New Level dialog.

Control Domain

Selects the Control Domain for Physical Element/Template Type instance.

Picture Template

Displays the picture templates configured for Template Types and the preferred picture template is displayed as default.Only visible in case Template Type has picture template configuration.

Picture Assigns a picture object to this Physical Element/Template Type instance. The name of the picture can not be edited.Use the adjacent browse button (...) to select from existing pictures.

HMI Symbol Selects HMI symbol for a Template Type instance. Not visible while creating a Physical Element.

Item Description

208 33003669 09/2014

Page 209: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

The picture templates configured for Template Types are displayed in this list and the preferred picture template is displayed as default.

If a Template Type instance belongs to a Template Type having picture template configuration, you are not allowed to change the HMI symbols for the member Control Modules.

If new Control Modules are added to a Template Type instance, and if its Template Type has a picture template associated, you are allowed to configure an HMI symbol for each of the newly added Control Modules in the instance.

These HMI symbols will also be generated inside the same picture as that of the Template Type instance.

These HMI symbols can overlap with existing symbols on the picture. You have to sort it out in the generated page.

HMI Symbol of Template

If HMI Symbol Configuration type is set to HMI Symbol of Template, the Template Type instance will be represented by a single HMI Symbol.

The HMI symbol will be generated into the associated picture object of the instance.

HMI Symbol of Members

If HMI Symbol Configuration type is set to HMI Symbol of Members, the HMI symbols of the member Control Modules will be used to represent this Template Type instance.

In this case you are allowed to modify the HMI symbols of the member Control Modules of the Template Type instance.

You can select the picture object as it is done for regular physical elements.

None

If HMI Symbol Configuration type is set to None, you can select the picture object as it is done for regular physical elements.

In this case, HMI symbols of member Control Modules will not be generated, but symbols of Control Modules added to the Template Type instance in UAG will be generated on the picture object selected.

33003669 09/2014 209

Page 210: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Creating Template Type Instances by Drag-and-Drop

Overview

You can create Template Type instances by using the context menu of a Functional Physical Element, please refer to previous section

(see page 207) dragging-and-dropping Template Types from a Template Library to a Functional Physical

Element in the Physical Model tree.

If the first physical level in project customization is defined as a Physical Element, the Template Type instance can be created directly under Site node.

Dragging-and-Dropping

While dragging a Template Type over the nodes in the Physical Model tree, the cursor shows where dropping is possible.

If you drop a Template Type to a Physical Element that allows creation of a Functional Physical Element, the New Level dialog, described in the previous section (see page 207), will be displayed.

The Use Template check box is activated and the Source Template text box is enabled, displaying the name of dragged Template Type.

You can proceed with creation of a Template Type instance or deactivate the Use Template check box and create a regular Physical Element.

NOTE: A Template Type can not be dragged if there are any unsaved changes.

An asterisk (*) is displayed on the Template Type name in the Libraries tree to indicate unsaved changes.

On saving changes, the asterisk (*) next to Template Type name disappears.

210 33003669 09/2014

Page 211: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Viewing Template Type Instances

Viewing Properties of Template Type Instances

The property tabs defined for a Template Type will be displayed in the New Level dialog of the Template Type instance as soon as they are created.

For example: Alarm, Command, Setup, HMI Alarm or Enable.

Please refer to Adding Properties to a Template Type. (see page 188)

The properties displayed on the tabs can be modified and can be saved by clicking the Apply button.

Viewing Template Type Instances in the Physical Model Tree

The member Control Modules of a Template Type instance and their variables are visible like individually created Control Modules and variables.

However, to differentiate between regular Physical Elements and Template Type instances in the Physical Model tree, Template Type instances and their member Control Modules are displayed with a different color in the tree.

33003669 09/2014 211

Page 212: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Template Type Modification

Section 5.6Template Type Modification

What Is in This Section?

This section contains the following topics:

Topic Page

General Information on Template Type Modification 213

Modification of Basic Template Type Details 214

Creation/ Modification/ Deletion of Control Modules 215

Creation/ Modification/ Deletion of Other Template Type Details 216

Saving Template Type Modifications 220

Propagating Template Type Modifications 221

212 33003669 09/2014

Page 213: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

General Information on Template Type Modification

Overview

Existing Template Types can be modified in the Template Libraries section of the Libraries tree in a UAG project.

Template Types can be saved under the same Template Type name in the same library, or copied with the same or a different Template Type name in an arbitrarily chosen library.

A Template Type can also be deleted from a library.

Modifications in a Template Type lead to a new version of the Template Type and the Template Library.

Template Type Modification

Modifications in a Template Type will be propagated to all of its instances.

NOTE: Not all modifications are propagated to the instances as explained in the following sections.

Prerequisites

Template Libraries, containing predefined Template Types, have to be available.

Template Type instances of various Template Types have to be available in the project.

Results

Modified Template Types saved into the respective Template Libraries.

Modifications propagated to all instances of the Template Type if required.

General Process Sequence

Modifying basic details of a Template Type. Adding/ deleting/ modifying free Variables of a Template Type. Adding/ deleting/ modifying interlock logic of a Template Type. Adding/ deleting/ modifying links between the member Control Modules of a Template Type. Adding/ deleting/ modifying Template Type properties. Saving the modified Template Type by saving the Template Library.

33003669 09/2014 213

Page 214: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Modification of Basic Template Type Details

Overview

You can modify basic details of a Template Type using the Properties dialog.

Right-click a Template Type and select Properties from the context menu.

If you change the Name of a Template Type, the Libraries tree is refreshed in order to display the new name.

Modifications are not propagated to the Template Type instances until the Template Library is explicitly saved. Please refer to Saving Template Type Modifications (see page 220).

Dialog Description and Validation

For the description of the New Template Type dialog and the validation rules that apply, please refer to Creating a New Template Type (see page 183).

Modifications and Impact

The following table shows various modifications that can be done and their impact on existing instances of the Template Type.

Property Description

Name Modification needs not be propagated to Template Type instances since Template Type instances pick this from Library.

Description Modification needs not be propagated to Template Type instances although Template Type instances use the same description by default. You can change the description, during and after instantiation.

HMI Symbol Configuration

Modification of HMI Symbol configuration (for example from Picture Template to HMI Symbol) will be propagated to the instances but any changes in the HMI symbol list or picture template list will not be propagated.For example, if you changes the default selection of the HMI symbols, it will not be propagated to the instances because the effective selection can be made for Template Type instances hence propagating the modification may overwrite user selection in some cases.

Help File Modification need not be propagated to Template Type instances because help file information will not be stored along with instances but will be accessed from Library.

214 33003669 09/2014

Page 215: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Creation/ Modification/ Deletion of Control Modules

Control Modules

You can add/modify/delete Control Modules of Template Types.

Open the Properties dialog of a Control Module to modify its properties.

Modifications are not propagated to the Template Type instances until the Template Library is explicitly saved. Please refer to Saving Template Type Modifications (see page 220).

Dialog Description and Validation

For the description of the New Control Module dialog and the validation rules that apply, please refer to Adding Control Modules to a Template Type (see page 185).

Modifications and Impact

The following table shows various modifications that can be done and their impact on existing instances of the Template Type.

Deleting Control Modules

Select the Control Module in the Libraries tree, right-click and select Delete from the context menu to delete Control Modules from the Libraries tree.

If variables of deleted control modules were used in interlock conditions of other Control Modules within the Template Type, the interlock conditions of those Control Modules become incomplete due to the deleted variables.

You can not save a Template Library that contains Template Types having incomplete interlock definitions.

In this case a message is displayed.

Property Description

Control Module Name Modifications will not affect the Control Module name of the Template Type instances, because you are allowed to set names for the Control Module instances individually. The modified Control Module name will be shown in the Template Type Control Module Name field in the property dialog of the Control Module instances in the project.

Control Module Description

Modifications will not be propagated to existing Template Type instances but newly created instances will get the updated description.

Properties displayed on Control Module´s property tabs

Changing values of these properties, i.e. changing values of the Control Module’s variable properties, will not be propagated to the existing Template Type instances but newly created instances will get the updated values.

33003669 09/2014 215

Page 216: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Creation/ Modification/ Deletion of Other Template Type Details

Properties

You can add/modify/delete Template Type properties using the Property List dialog. Please refer to Adding Properties to a Template Type (see page 188).

Select Properties from the context menu of the Property List dialog to open the Template Property dialog.

Use this dialog to modify the Template Type properties.

If you add or delete any property, this will be reflected automatically toexisting instances of the Template Type after saving the Template Type Library.

Free Variables

You can add/modify/delete Template Type free variables using the Variable Viewer.

Right-click a Template Type and select Open Variables from the context menu.

The variable references (links, interlocks and Template Type properties) will be updated in case of renaming/ deleting free variable.

In case of deleting free variables which are used in interlocks, a confirmation dialog is displayed before deleting the variable.

Modifications are not propagated to the Template Type instances until the Template Library is explicitly saved. Please refer to Saving Template Type Modifications (see page 220).

Links

You can modify/delete links defined in a Template Type using the Links Editor.

You can add links to an existing Template Type.

Right-click a member Control Module and select Open Links from the context menu.

Modifications are not propagated to the Template Type instances until the Template Library is explicitly saved. Please refer to Saving Template Type Modifications (see page 220).

In case of the DDT Link pin:1. If the DDT Link pin is not connected but none of the DDT elements are connected, link is

exported as normal link.2. If the DDT Link pin is connected with even a single DDT element connected, link is exported in

the following structure.

216 33003669 09/2014

Page 217: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Change Propagation

Change propagation from the template library to the Physical model is of 2 types:1. Normal change propagation2. Conflict change propagation

Normal Change Propagation:

If you modify any DDT Link element in the template library that is not associated with any variable in the Physical Model, the normal change propagation appears.

The following figure shows the normal change propagation:

The following table describes the types of Action in the normal change propagation:

Action Description

Update Default actionPropagates the changes to the Physical Model.

Delete Deletes the template instance from the Physical Model.

Disconnect Disassociates the template instance from the Template Library.

33003669 09/2014 217

Page 218: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Conflict Change Propagation:

If you modify any DDT Link element in the template library that is already associated with any variable in the Physical Model, the conflict change propagation appears.

The following figure shows the conflict change propagation:

The following table describes the types of Action in the conflict change propagation:

NOTE: The same conflict is also observed if you associate a DDT variable to the DDT Link FFB pin in the template library when all the DDT elements are associated with variables in the Physical Model.

Interlocks

You can modify/delete interlock logic defined for member Control Modules of a Template Type using the graphical interlock editor.

You can configure new interlocks for an existing Template Type.

Right-click a member Control Module and select Open Interlocks from the context menu.

Modifications are not propagated to the Template Type instances until the Template Library is explicitly saved. Please refer to Saving Template Type Modifications (see page 220).

Action Description

Delete Default actionDeletes the template instance from the Physical Model.

Disconnect Disassociates the template instance from the Template Library and this template instance is available as independent equipment. Future changes made to the Template Library do not impact this equipment.

218 33003669 09/2014

Page 219: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Deleting a Template Type

Select Delete from the context menu to delete a Template Type from the Libraries tree.

You can delete a Template Type irrespective of whether the type is already instantiated in the UAG projects or not.

Modifications are not propagated to the Template Type instances until the Template Library is explicitly saved. Please refer to Propagating Template Type Deletion (see page 223).

33003669 09/2014 219

Page 220: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Saving Template Type Modifications

Overview

Modifications of a Template Type are not propagated to the Template Type instances until the Template Library is explicitly saved.

Right-click the respective Template Library and select Save from the context menu.

Unsaved Modifications

An asterisk (*) is displayed on Template Types and Template Libraries in the Libraries tree to indicate unsaved modifications.

On saving modifications, the asterisks (*) disappear.

NOTE: You will be asked to save modifications in a Template Library, if a UAG application is closed without saving changes in the Template Library.

General Process Sequence

Step Action

1 Right-click on a Template Library that is displayed with an asterisk (*) and select Save from the context menu.Result:In case of modifications that need to be propagated to Template Type instances, the Template Library Change Propagation dialog is displayed.

2 Click OK to proceed.Result:Template Type modifications are saved to the Template Library database.The asterisks (*), displayed on Template Types and Template Libraries, disappear.The Libraries tree is refreshed.

3 The Template Type version is updated.

4 Existing instances of the saved Template Type will be updated in case of modifications that need to be propagated.

220 33003669 09/2014

Page 221: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Propagating Template Type Modifications

Overview

Template Type instances in the currently open UAG project are updated immediately after saving those modifications, which need to be propagated to existing Template Type instances.

Any other UAG projects that use the modified Template Types will be updated when they are opened next time.

UAG Analysis

UAG analyzes the versions of the libraries (both SCoD and Template Type Libraries) used in the project at the time of opening and detects the modifications.

You can open a project successfully only after updating the library versions in UAG as well as in project Customization.

Updating Customization

If any version modifications are detected the Open Project dialog is displayed, listing the Libraries with modifications.

Inside the dialog the following confirmation message is displayed:

Customization needs to be updated using UAG Customization before project can be opened.

Do you want to open customization now?

If you click No, the project will not be opened.

If you click Yes, the Customization Editor is launched and the project customization is opened and updated.

Propagating Modifications

After updating the project customization, you have to open the project again and propagate the modifications in SCoD and Template Type Libraries to the project.

The Open Project dialog is displayed, listing the modified Libraries with their version information.

Inside the dialog the following confirmation message is displayed:

The version of the following libraries have been changed.

Do you want to update the changes now?

If you click Yes, UAG starts a detailed analysis of the modifications in each library.

33003669 09/2014 221

Page 222: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Detailed Analysis

The modifications are analyzed with respect to the current project.

SCoD modifications are analyzed and propagated first. Please refer to Handling SCoD Library Modifications (see SCoD Editor 3.3 SP4, a SoCollaborative software, User Manual).

Then analysis of modifications in Template Libraries begins.

A summary of the modifications in a Template Library will be displayed in the Template Library Changes Propagation dialog.

Template Library Changes Propagation

For each instance of modified Template Types a row is displayed.

If there are multiple modifications for a Template Type, the Changes column will display them in a single line, but modifications will be separated by comma.

For normal modifications the Action column lists 3 options: Update Disconnect Delete

But for conflicting modifications as described below, only Disconnect and Delete will be listed.

Click OK to apply the selected action to each instance of the Template Types or click Cancel to abort change propagation and close the project.

However, if a project is already opened and you have changed a Template Type and click Save of the Library node´s context menu, the dialog shown above is displayed to decide on the actions to be taken for instances of the modified Template Types.

If you click OK the library is saved, project customization is automatically updated and changes are propagated.

If you click Cancel both, change propagation and save operation, are aborted.

222 33003669 09/2014

Page 223: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Conflicts with Instances

After creating instances of Template Types, Template Types could be modified in a way that they conflict with instances.

Possible ways are: You modify the Template Type ValveCtrl to add a Control Module CM1.

But CM1 has already been added as a Control Module to the instance Valve of this type. Same name conflict can happen in case of variables also.

You modify the Template Type MotorCtrl to add a free variable Var1.But Var1 has already been added to the instance Motor1 of this type.

Conflicts also arise, if there are links or interlocks, which were left open initially and completed in the Template Type instances, are modified and defined in Template Type.

Conflicts arise, when you change HMI Symbol Configuration from HMI Symbol to Picture Template or HMI Symbol of Members to Picture Template because the Picture Template requires the Template Type instances to be assigned to unique picture objects.

In such cases changes cannot be propagated to instances but you have either to delete or disconnect them.

The changes, irrespective of whether they can be propagated or not, will be displayed in the Template Library Changes Propagation dialog.

Propagating Template Type Deletion

Once a Template Type is deleted in a Library, Template Type instances in the UAG project can either be deleted or disconnected from its type.

In case of Template Type deletion only Disconnect and Delete will be listed in the action column of the Template Library Changes Propagation dialog.

You can either delete the instances or disconnect them.

By default Delete is selected for the instances of deleted Template Types.

Click OK to apply the selected action to each instance of the Template Types or click Cancel to abort change propagation and close the project.

However, if a project is already opened and you have changed a Template Type and click Save of the Library node´s context menu, the dialog shown above is displayed to decide on the actions to be taken for instances of the modified Template Types.

If you click OK the library is saved, project customization is automatically updated and changes are propagated.

If you click Cancel both, change propagation and save operation, are aborted.

Please also refer to Disconnecting Template Type Instances (see page 230).

33003669 09/2014 223

Page 224: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Propagating Control Module Creation in Template Type

Newly created member Control Module will result in a conflict during Template Library Changes Propagation if: the Control Module name does not follow the Naming Conventions specified for the UAG

project, the UAG project already contains a Control Module with the same name.

You can resolve the name conflict by clicking the Resolve Names… button in the Template Library Changes Propagation dialog.

The Resolve Names… button is enabled only, if the summary of modifications contains at least 1 resolvable conflict.

The button is disabled as soon as the resolvable conflicts are resolved.

The Resolve Name Conflicts dialog is displayed to help you to resolve name conflicts.

The dialog lists the Control Modules having name conflicts provided there are no other unresolvable conflict existing for the instance (for example a new variable with conflicting name).

To edit the name click New Value. A dialog for defining a new name, according to the Naming Conventions of the project, is displayed.

If you resolve a name conflict, a check mark is displayed in front of the respective row.

To apply the changes click OK.

If you did not resolve the conflicts, a confirmation dialog is displayed:

There are some more unresolved conflicts! Are you sure you want to continue?

Click Yes to apply the changes and return to the Template Library Changes Propagation dialog.

Click No to close the confirmation dialog and to continue resolving the rest of the conflicts.

Once you complete resolving naming conflicts and return to the Template Library Changes Propagation dialog it will be updated: to remove the Conflicts and red background color of those instances for which name conflicts

were successfully resolved. to set the default propagation Action to Update for the resolved conflicts.

NOTE: The resolved names will be used only for propagation to the currently opened project. Template Library will not be updated with the new names selected using Resolve Name Conflicts.

224 33003669 09/2014

Page 225: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Template Instance Modification

Section 5.7Template Instance Modification

What Is in This Section?

This section contains the following topics:

Topic Page

General Information on Template Type Instance Modification 226

Modifications Allowed for Template Type Instances 227

Modifications Not Allowed for Template Type Instances 228

Modifying Control Module Names for Template Type Instances 229

Disconnecting Template Type Instances 230

33003669 09/2014 225

Page 226: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

General Information on Template Type Instance Modification

Overview

Template Type instances can be modified or deleted from the Physical Model tree.

Deleting Template Type instances also deletes the child objects like Control Modules and variables.

226 33003669 09/2014

Page 227: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Modifications Allowed for Template Type Instances

Modifications Allowed

Examples of modifications allowed for Template Type instances: Control Module names can be modified. Unconnected pins (left open in the Template Type definition) can be connected to arbitrary,

suitable variables in the project. Undefined interlocks (left open in the Template Type definition) can be completed with interlock

logic referencing arbitrary, suitable variables in the project. Unconnected pins of newly added Control Modules in the Template Type instance can be

connected to arbitrary, suitable variables in the project. Interlocks of newly added Control Modules can be completed with interlock logic referencing

arbitrary, suitable variables in the project. Changeable variable properties of Template Type instances (including the Template Type free

variables) can be set to Template Type instance specific values.You can modify variable properties using the property dialogs of the member Control Modules property pages accessible from the Template Type instance node variable property dialog directly

New variables can be created and deleted on Template Type instances and on individual member Control Modules.NOTE: Free variables created for a Template Type can not be renamed or deleted in a Template Type instance. But free variables created for a Template Type instance can be modified or deleted.

Additional Control Modules can be added to a Template Type instance. A sub-level can be added to a Template Type instance, if allowed by the definition of the

corresponding Physical Level in customization. A newly added Control Module can be placed in between the member Control Modules as it will

not change the execution order of the existing member Control Modules in the Template Type definition. This can be done by drag-and-drop operation.

Separator lines can be added between member Control Modules of the Template Type instance.

HMI Symbols/ Picture Templates can be selected from the list of available HMI Symbols/ Picture Templates.

Deleting Template Type Instances

To delete a Template Type instance from the project, right-click a Template Type instance node in the Physical Model tree and select Delete from the context menu.

Deleting a Template Type instance deletes the variables, links, interlocks, Control Modules and child physical elements (if any) of the instance.

The references to deleted objects in the project, for example variable references in interlocks or channels, are also deleted.

33003669 09/2014 227

Page 228: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Modifications Not Allowed for Template Type Instances

Modifications Not Allowed

The following modifications are not allowed for Template Type instances: Control Modules belonging to a Template Type can not be deleted from Template Type

instances. Free variables of Control Modules, which are defined for a Template Type, can not be renamed

or deleted. Internal links defined for a Template Type (i.e. which are using variables that are internal to the

Template Type) can not be accessed in a Template Type instance and hence it is not possible to view, modify or delete such links.

Internal interlocks defined for a Template Type (i.e. which are using variables that are internal to the Template Type) can not be accessed in a Template Type instance and hence it is not possible to view, modify or delete such interlocks.

Control Modules belonging to a Template Type can not be dragged-and-dropped in order to not change the execution order.

Separator lines added in a Template Type can not be deleted or rearranged in a Template Type instance.

Master/slave relationship between Control Modules defined in a Template Type can not be changed in a Template Type instance.

228 33003669 09/2014

Page 229: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Modifying Control Module Names for Template Type Instances

Overview

The names of Control Modules belonging to a Template Type can be modified for Template Type instances.

Confirmation Dialog

A dialog will be displayed to confirm applying the new Control Module name to the other instances of the Template Type.

Click No to rename only the selected Control Module.

Click Yes to apply the new name to the corresponding member Control Modules in other instances of the same Template Type.

Yes is accepted only, if there is no name conflict.

Name Uniqueness Dialog

In case of name conflicts, the following dialog is displayed:

Click OK to rename non conflicting Control Modules.

Click Cancel to abort operation. The Control Module properties dialog remains open.

33003669 09/2014 229

Page 230: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

Disconnecting Template Type Instances

Overview

To disconnect a Template Type instance from its source Template Type, right-click a Template Type instance and select Disconnect from Template Type from the context menu.

Confirmation Dialog

A dialog will be displayed to confirm disconnecting.

Click Yes to remove the connection with the source Template Type.

Results

Once disconnected, the Template Type instance works like a normal Physical Element in the project.

The property pages of the Template Type instance are also dropped.

Modifications of the Template Type definition are not propagated.

Once disconnected, it can not be reconnected.

230 33003669 09/2014

Page 231: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

33003669 09/2014 231

Page 232: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Template Libraries

232 33003669 09/2014

Page 233: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Unity Application Generator (UAG) 3.3 SP4

SCoD Variable Value Propagation

33003669 09/2014

SCoD Variable Value Propagation

Chapter 6SCoD Variable Value Propagation

Overview

UAG V3.3 SP4 supports value propagation of SCoD variable changes to the new instances and also update the variable property changes to all existing SCoD instances in the UAG project.

For more information about SCoD value propagation, refer to Value Propagation (see SCoD Editor 3.3 SP4, a SoCollaborative software, User Manual).

Version Updation

The user receives an inconsistency message for library version when a UAG project is opened after saving the changes in SCoD Editor.

The UAG project does not open if the user does not update the SCoD version.

The user has to confirm only the library update. The changes made in SCoD Editor are automatically updated to the UAG project and all the existing CM instances are updated with the modified values from SCoD.

Change History in UAG

The change history of the project lists the modified variable properties of the existing instances.

You can view the updated changes from UAG project in: File → Change History.

33003669 09/2014 233

Page 234: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

SCoD Variable Value Propagation

The following figure displays the Change History window in UAG:

PLC and HMI Generation

The user will be prompted for generations of PLCs and HMIs after the instances are updated with new values.

The following happens after the generations start: During the generations, all the existing modifications gets generated into the PLC and HMI

project along with propagation changes. After the completion of PLC generation the HMI generation starts.

You can verify the propagated values in UnityPro and Vijeo Citect after the generations.

NOTE: The SCoD value propagation only supports SCoD. There is no value propagation for template types.

234 33003669 09/2014

Page 235: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Unity Application Generator (UAG) 3.3 SP4

33003669 09/2014

Appendices

3

What Kind of Information is in the Appendices

The appendices contains release notes and reference information, e. g. information related to the generated output of Unity Application Generator.

What Is in This Appendix?

The appendix contains the following chapters:

Chapter Chapter Name Page

A Generated Code 237

B Format of the XML File for Generic HMI 321

C Synchronization of Projects 339

D Additional Information 341

3003669 09/2014 235

Page 236: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

236 33003669 09/2014

Page 237: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Unity Application Generator (UAG) 3.3 SP4

33003669 09/2014

Generated Code

Appendix AGenerated Code

Introduction

This chapter includes an overview and detailed information about the generated code and the generation principles.

What Is in This Chapter?

This chapter contains the following sections:

Section Topic Page

A.1 Overview of Generated Code and Generation Principles 238

A.2 Generation for Unity Pro 240

A.3 Generation for Vijeo Citect 269

A.4 Generation for Monitor Pro 283

A.5 Generation for iFIX 296

A.6 Generation for a Generic HMI 315

A.7 Generation for Net Partners 317

33003669 09/2014 237

Page 238: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Overview of Generated Code and Generation Principles

Section A.1Overview of Generated Code and Generation Principles

Overview of Generated Code

Introduction

Unity Application Generator generates code to be downloaded for the PLCs, tags and graphics for Monitor Pro / iFIX

orXML files with all tags and their attributes and a customizable text file for usage in any HMI (generic HMI) and

CSV files for import into Net Partners.

Generation for PLCs

For each PLC Unity Application Generator generates the following: The PLC configuration Code for program initialization Code for analog scaling Code for communication Channels Code for connecting Advantys STB and Profibus DP I/O Code for Control Modules All variables PLC memory managing

NOTE: The generated code will be in IEC 61131-3 standard FBD language.

Generation for Vijeo Citect / Monitor Pro / iFIX HMI

For the HMI Vijeo Citect / Monitor Pro / iFIX Unity Application Generator generates: Screens for Functional Physical Elements All tags needed for the communication between HMI and PLC All HMI internal tags

238 33003669 09/2014

Page 239: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for Generic HMI

For a generic HMI Unity Application Generator generates a XML file and a customizable text file for each Data Server containing all tags and their attributes necessary for process visualization.

Generation for Net Partners

For Net Partners Unity Application Generator generates a CSV file containing all variables related to a Net Partner.

33003669 09/2014 239

Page 240: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for Unity Pro

Section A.2Generation for Unity Pro

Introduction

This section describes the generation of Unity Application Generator for Unity Pro.

What Is in This Section?

This section contains the following topics:

Topic Page

What is generated? 241

Generation from General Project Settings - Overview 243

Generation from the Topological Model - Overview 244

Generation from the Physical Model - Overview 249

Generated PLC Configuration 254

Generated Variables 255

Generated Operator Screens 257

Generated Animation Tables 258

Generated Code: Functional Physical Elements, Control Modules and Interlocks 259

Generated Code: Communication 262

Generated Code: Initialization (Quantum only) 265

Generated Code: Scaling of Analog Values (Quantum only) 266

Generated Code: Discrete Configuration (Premium + M340 only) 267

240 33003669 09/2014

Page 241: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

What is generated?

What is generated?

For each PLC on the Topological Model, Unity Application Generator creates 1 Unity Pro project.

For all elements of the Physical Model, Unity Application Generator creates special objects.

Generated objects from the Physical Model:

Generated objects from the Topological Model:

Element Object Comment

Structural Physical Element

Functional Module in project browser

A Structural Physical Element corresponds to the following elements of the ISA Standard S88.01: Area Process Cell Unit

Functional Physical Element

FBD section with Function Blocks for all Control Modules and optionally Functional Modules in the project browser, in case the element includes sub-levels.

A Functional Physical Element corresponds to the Equipment Module element of the ISA Standard S88.01.

Control Module Function Block with all inputs and outputs connected correctly with variables, literal values, or linksNote: For type-less Control Modules nothing is generated!

-

Variables Depending on the variables type, Unity Application Generator generates the respective Unity Pro variables and if necessary an initialization section for the variables.

-

Element Object

Channel Section with logic for communication, Peer Cop or I/O scanner configuration

PLC Unity Pro project with the PLC configuration.

33003669 09/2014 241

Page 242: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Property Settings

NOTE: The user has to keep the Virtual connected mode option in Unity Pro disabled, to allow further UAG generations.

You will find the setting in Unity Pro under Tools → Project Settings → Build → Virtual connected mode.

242 33003669 09/2014

Page 243: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation from General Project Settings - Overview

Introduction

The following tables gives an overview about the general settings in Unity Application Generator and the resulting settings in Unity Pro.

Generation from General Project Settings

Generation from General Project Settings

NOTE: In the Unity Pro under Tools → Project Settings... → Laguage extensions the options Allow leading digits and Allow extended character set will be set.

Attribute Unity Pro Comment

View → Options → PLC → PLC project path

Directory where Unity Pro project is generated

Unity Pro project is generated as PLCProjectPath\PLCProjectName\PLCProjectName.STU Example: PLCProjectPath = c:\PLCPrjs PLCProjectName = PLC1

generated project will be c:\PLCPrjs\PLC1\PLC1.STU

View → Options → PLC → Generate completely new

Unity Pro project will be generated completely new.

33003669 09/2014 243

Page 244: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation from the Topological Model - Overview

Introduction

The following tables gives an overview about the settings in Unity Application Generator for the Topological Model and the resulting settings in Unity Pro.

Generation for PLC

Generation for PLC

Attribute Unity Pro Comment

PLC Project Name

Directory and name of PLC project

Refer map Generation from General project settings (see page 243) .

CPU Type Project Browser (Structural View) → Station → Configuration

-

Address ranges Addresses for Special registers I/O modules Variables Peer Cop I/O Scanner

IO_PLC variables are mapped in Unity Pro to topological addresses of type EBOOL. (In Unity Application Generator they are displayed with type BOOL.)PLC_HMI variables are mapped in Unity Pro to StateRAM addresses of type %MW. Changing the addresses for Quantum HW modules will result in recalculation of the memory layout for the modules and thus all I/O variables.Changing the addresses for HMI will result in recalculation of the addresses of PLC_HMI variables. The Memory Mapper keeps the addresses, which are not affected by the change and recalculates only those addresses which are outside the old range.To view the different HMI communication frames, use the menu command Open HMI Communication for communication channels from type Data Server. If more than 100% of a HMI communication frame is used, increase the number of HMI variables in the PLC properties, to prevent a recalculation of this HMI communication frame.

Greatest Address %M (0x)

Select CPU Open Module → Configuration

-

Greatest Address %I (1x)

Select CPU Open Module → Configuration

-

Greatest Address %IW (3x)

Select CPU Open Module → Configuration

-

244 33003669 09/2014

Page 245: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for a HW Module

Generation for a HW module

Generation for the attributes of a HW module

NOTE: For generic modules no entries are generated in the I/O map!

Greatest Address %MW (4x)

Select CPU Open Module → Configuration

-

Comment Project Browser (Structural View) → Station → Properties → Comment

-

Attribute Unity Pro Comment

Object Unity Pro Comment

Quantum/Premium HW Module

- The modules are entered in Unity Pro.

Momentum Ethernet I/O Module

Project Browser (Structural View) → Station → Communication → Networks → Network → Open → I/O Scanner

For this type of modules no entry to the I/O map is made.The module is set up in the I/O Scanner.

Momentum Modbus Plus I/O Module

Project Browser (Structural View) → Station → Communication → Networks → Network → Open

For this type of modules no entry to the I/O map is made.The module is set up in the Peer Cop.

Generic I/O Module

- For this type of modules no I/O mapping is made.

Attribute Unity Pro Comment

Failure State

Select module Open Module → Config → Failure State

Applies only to digital output modules. Default state of the HW module has to be same as the default state of the variables mapped to the module.

Failure Value

Select module Open Module → Config → Failure State → Value

Applies only to digital output modules with default State = User defined. The default value of the module is calculate by the default states of the variable mapped to that module.

Addresses Select module Open Module → Config → ADRESSES

The State RAM addresses of the I/O modules are calculated from the information entered in PLC → Addresses in Unity Application Generator.

33003669 09/2014 245

Page 246: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for a PLC - PLC Channel

Generation for a PLC - PLC Channel

Generation for the attributes of a PLC - PLC Channel

Object Unity Pro Comment

PLC Channel Project Browser (Structural View) → Station → Communication → Networks → Network → Open → Peer Cop / I/O Scanner

1 or 2 entries (depending on the number of communication paths specified in Unity Application Generator) are generated in the Peer Cop / I/O Scanner table according to the network addresses of the PLCs involved in the communication. The %MW addresses used by the communication are calculated from the information entered in PLC → Addresses for PLC communication in Unity Application Generator.

FBD logic for Peer Cop / I/O Scanner

A FBD section with the name of the Channel is generated in a group called Communication. The logic takes care to pack and unpack the communicated variables into the %MW memory range used for the Peer Cop I/O Scanner. It also takes care to switch to the second communication path if the first is lost (if a second path is specified) and to use the default values for the variables if the communication is lost.

Variables All variables specified in the PLC communication table are generated in receiving PLC (Unity Pro project) with the same name as in the sending PLC (the scope of the variable names is the entire plant with all PLCs). The generated FBD logic takes care to set the variables to the correct values communicated by Peer Cop / I/O Scanner or to predefined default values.

Attribute Unity Pro Comment

Name Name of the section with the communication logic

With Ethernet communication for the receiving PLC 2 sections will be generated, called Channelname and Channelname_2.

Comment Comment of the section with the communication logic

-

Communication partner

Either all (Global, broad

cast - only Quantum) or

another PLC (Specific, peer-to-peer communication)

The communication partner cannot be changed after the Channel has been created in Unity Application Generator.

246 33003669 09/2014

Page 247: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for a PLC-PLC Channel - Other Objects/Attributes that influence a PLC-PLC Channel

Generation for a PLC-PLC Channel, other objects/attributes that influence a PLC-PLC Channel

Communication path(s)

Peer Cop nodes or I/O Scanner entries

The network address of the communication partner specifies the possible communication paths and therefore also the link and the node addresses in the Peer Cop/ I/O Scanner.The following table shows the possible communications:

If... Then...

the communication is from Quantum to Quantum/Premium/M340 PLC

both communication paths will read from same source PLC address.

the communication is from Premium/M340 to Quantum/Premium/M340 PLC

each communication path will read from different source PLC address.

Timeout(s) The duration literals connected to special send and receive Function Blocks in the Peer Cop logic

The timeout(s) specifies the supervision time of the communication before the communication logic switches to the second communication path or default values. If there is no timeout specified, the generated logic sets 0 seconds as default timeout.

Attribute Unity Pro Comment

Attribute Unity Pro Comment

PLC communication table → Variables

Variables that will be generated in the receiving PLC(s) and communicated via Peer Cop or I/O Scanner

Variables of data type BOOL are packed into Words (max. 16), Variables of other data types are expanded in one or two words.

PLC communication table → Variables → Failure state

Specifies how the communication logic will handle communication disruption

Last Value: in case of communication interruption the

variable will hold its last value.

User defined: in case of communication interruption the

variable will be set to value specified as default value.

Disabled: in case of communication interruption the

variable will be set to 0.

33003669 09/2014 247

Page 248: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

PLC communication table → Variables → Failure value

The value to which variables are set in case of communication disruption

Applies only if default state = User defined.

Network address of CPU, NOM, NOE, M1, ETY, etc.

Node addresses in Peer Cop or I/O Scanner

The Modbus Plus network address of the module specifies the node addresses used in the Peer Cop.The Ethernet network address of the module specifies the node addresses used in the I/O Scanner.

PLC → Addresses → PLC communication

%MW addresses used by Peer Cop/ I/O Scanner

The %MW addresses used by the communication are calculated from the information entered in PLC → Addresses for PLC communication in Unity Application Generator.

Attribute Unity Pro Comment

248 33003669 09/2014

Page 249: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation from the Physical Model - Overview

Introduction

The following tables gives an overview about the settings in Unity Application Generator for the Physical Model and the resulting settings in Unity Pro.

Generation for Unity Application Generator

Generation for the Unity Application Generator

Generation for a Structural Physical Element

Generation for a Structural Physical Element

Generation for the attributes of a Structural Physical Element

Generation for a Functional Physical Element

Generation for a Functional Physical Element

Object Unity Pro Comment

Site Project Browser Site is a top level folder in the Unity Pro Project Browser in the Functional view.

Object Unity Pro Comment

Structural Physical Element

Project Browser → Site → Functional module

A Functional module is generated in the Unity Pro project.The parent element of the Functional module in Unity Pro corresponds to the parent element in UAG.If any of the child elements exists in several PLCs, the Functional module is generated in several PLC projects.

Attribute Unity Pro Comment

Name Functional module name

-

Object Unity Pro Comment

Functional Physical Element

Unity Pro FBD section A Functional Physical Element is a section within the parent folder in the Unity Pro Project Browser in the functional view. The entire group hierarchy is generated.In case the Functional Physical Element includes sub-levels, an additional Functional module is generated in the Unity Pro project.

33003669 09/2014 249

Page 250: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for the attributes of a Functional Physical Element

Generation for a Control Module

Generation for a Control Module

Attribute Unity Pro Comment

Name The name of the Functional Physical Element is part of: Function block

instance names Functional

Physical Element variable names

(If defined in the Customization Editor).

Changing the name of a Functional Physical Element result in changing the name of all Function Block instance names of its Control

Modules all names of the variables of the Functional Physical

Element

Section name Unity Pro section name

-

PLC Unity Pro project to which the Functional Physical Element belongs

The PLC to which the Functional Physical Element is assigned cannot be changed if the Functional Physical Element has been generated once.

Description, Comment

Unity Pro section comment

The Unity Pro section comment is the concatenation of the description and the comment of the Functional Physical Element.

Description The description of the Functional Physical Element is part of the comment of all its variables.

-

Object Unity Pro Comment

Control Module Unity Pro Function Block instanceNote: For type-less Control Modules nothing is generated. Analyzer prints a Warning message.

The Unity Pro Function Block instance name is generated as ’FunctionalPhysicalElementName_ControlModuleName’. If a Control Module is assigned to a different PLC than the parent Functional Physical Element, the Functional Physical Element section will also be generated in the Unity Pro project (PLC) to which the Control Module is assigned.

Operator Screen An operator screen is generated for every Control Module (for which a template is available) assigned to a PLC.

250 33003669 09/2014

Page 251: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for the attributes of a Control Module

Attribute Unity Pro Comment

Parent Functional Physical Element

section in which the Function Block instance will be generated

name of Function Block instance

names of the variables of the Control Module

A Control Module can be moved to another Functional Physical Element by drag and drop in the Physical Model of Unity Application Generator.

PLC in which project The PLC to which the Control Module is assigned cannot be changed if Control Module has been generated once.

Name name for FB instance and ControlModuleVar

-

Description, Comment

comment of Function Block instance

The Function Block instance comment is the concatenation of the Control Module description and Control Module comment.

Description The description of the Control Module is part of the comment of all variables of the Control Module.

-

Interlock definition

Function Block network connected to the Control Module’s Function Block

The textual description of the interlock definition as a comment in the Control Module’s corresponding Function Block.

The interlock definition has to be syntactically and semantically correct. This means: It has to be a valid logical expression. The variables used have to be existing locally.

Note:Existing interlock definitions from older versions of Unity Application Generator (<V1.5) will stay as comments.

33003669 09/2014 251

Page 252: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for a Variable

Generation for a variable

Generation for the attributes of a variable

Object Unity Pro Comment

Variable Unity Pro variable By default the variable name is generated as defined in the Customization Editor → Name Creation Rules.The variable comment is generated as ’VariableDescription - ControlModuleDescription - FunctionalPhysicalElementDescription’ (Control Module variable) or ’VariableDescription - FunctionalPhysicalElementDescription’ (Functional Physical Element variable).

Attribute Unity Pro Comment

Name variable name The name can only be changed for free variables.

Description part of variable comment

See above

InitialValue initial value of variable Initial values can be specified for: unlocated variables (PLC or PLC_NET). located %MW variables (PLC_HMI or

PLC_NET).

Failure State

Used for setting the default state of the I/O module, to which the variable is mapped. Default state of the I/O module has to be same as the default state of the variables mapped to the module.

Applies only to IO_PLC digital output variables.

Failure Value

Used for calculating the default value of the I/O module, to which the variable is mapped.

Applies only to IO_PLC digital output variables with Default state = User defined.

252 33003669 09/2014

Page 253: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Command defines how the variable is connected to the Function Block instance

Applies only to PLC_HMI variables. Free variables will be IN/OUT, see below.IN variables: Are connected to input of Function Block instance Operator / Parameter

The variable can be changed by the HMI. Logic/Constant

The variable cannot be changed by the HMI.

OUT variables Are connected to output of Function Block

instance and View only.

IN/OUT variables Operator / Parameter: The variable is connected

to the input and the output of the Function Block instance.

Constant: The input of the Function Block instance is connected with the initial value of the variable, the output is connected with variable.

Logic: The input of the Function Block instance is not connected, the output is connected with variable.

Variable used

specifies if a variables is generated and connected to the Function Block instance

-

Invert Creates invert functionality of pin or creates literal if an additional pin is used to invert this IO point.

Applies only to IO_PLC variables of data type BOOL. Depending on the Control Module type the input/output of Function Block instance is either inverted or if the Control Module Type has a special input to specify the inverted logic, a literal 0 or 1 (inverted) is connected to this input.

State RAM address

variable addresses IO_PLC variables: The addresses are calculated from addresses of the I/O modules to which the variables are assigned.

PLC variables: Generated as unlocated variables.

PLC_NET variables: The address are calculated from the information entered in PLC → Addresses for HMI in Unity Application Generator.

Attribute Unity Pro Comment

33003669 09/2014 253

Page 254: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generated PLC Configuration

What is Generated?

Unity Application Generator will generate all configuration information which is in the scope of Unity Application Generator and what is necessary to describe the high level process design. It will not generate e. g.: ASCII setup information Specific module parameters

PLC Configuration

In the Unity Pro configurator, Unity Application Generator will take care for the following aspects: PLC type Memory partitions Peer Cop and I/O Scanner

254 33003669 09/2014

Page 255: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generated Variables

What is Generated?

Most variables in Unity Application Generator will generate variables in Unity Pro. Only variables of the type HMI will not generate a variable in Unity Pro but a tag in the HMI data base.

Variables

Each variable in Unity Application Generator of the connection types listed in the following table will result in a variable in Unity Pro.

NOTE: IO_PLC variables which are declared not used will not be generated in Unity Pro.

Connection types and related variables in Unity Pro:

NOTE: Free variables will be generated in Unity Pro without any logic.

Relation of In/Out definition, command type and generated connection of the variable to the FB for PLC_HMI Control Module type variables (the variable is named "var"):

Connection Type

Variable type in Unity Pro

Comment

IO_PLC Located variable The variables will be mapped to topological addresses of type EBOOL. In the Unity Pro logic the variables will be connected to the inputs/outputs of the FB. Free variables will not be connected.

PLC Unlocated variable In the Unity Pro logic the variables will be connected to the inputs/outputs of the FB of the Control Module. Free variables will not be connected.

PLC_HMI Located variable The variables will be mapped to %M and %MW variables in the State RAM. In the Unity Pro logic the variables will be connected to the inputs/outputs of the FB of the Control Module, for details see table below.

PLC_NET Located variable In Unity Pro located variables will be generated.

In/Out Command Generated

In OperatorParameter

Out View only

33003669 09/2014 255

Page 256: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

InOut Logic

OperatorParameter

Constant

In/Out Command Generated

256 33003669 09/2014

Page 257: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generated Operator Screens

What is Generated?

Unity Application Generator will generate operator screens for all control modules (for which templates are available) in the project assigned to the PLC

The operator screens are imported automatically into Unity Pro.

NOTE: Importing an operator screen named as an already existing one will not overwrite the already existing one. The imported operator screen will be imported with the name Copy of ....

Creating a Template XCR File

To create a operator screen template for a SCoD follow these rules: An operator screen for a SCoD can be configured in Unity Pro and exported in XML format

(.XCR file). The XCR file name has to be SCoDName.XCR and all XCR files for a SCoD library has to be

added to a zip file with a name SCoDLibraryName.ZIP. The ZIP file has to be placed inside the library folder. Names inside the XCR template file that are to be replaced by the actual full Control Module

name has to be written as _CM_SCoDName (CM can be any string). Names inside the XCR template file that are to be replaced by the actual full variable name has

to start with an underscore, e.g. _Var1.Max.

Generation Rules

If the generator finds a template XCR file for a Control Module during PLC generation, it will be used to create a new XCR file with actual data present in the project like full names of control module variables.

The new file will have the same name as the Control Module’s full name and is placed inside the folder PLC project folder\OperatorScreens.

If the Control Module is deleted in the UAG project and an incremental PLC generation is performed, then the generated XCR file for the Control Module is deleted and a message is displayed to delete the operator screen manually in the Unity Pro project.

If you do not provide a template, no operator screen will be created.

33003669 09/2014 257

Page 258: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generated Animation Tables

What is Generated?

Unity Application Generator will generate animation tables for the Control Modules (for which templates are available) in the project assigned to the PLC.

The animation tables are imported automatically into Unity Pro.

Creating a Template XTB File

To create an animation table template for a SCoD follow these rules: An animation table for a SCoD can be configured in Unity Pro and exported in XML format (.XTB

file). The XTB file name has to be SCoDName.XTB and the XTB files for a SCoD library has to be

added to a zip file with a name SCoDLibraryName.ZIP. The ZIP file has to be placed inside the library folder. Names inside the XTB template file that are to be replaced by the actual full Control Module

name has to be written as _CM_SCoDName (CM can be any string). Names inside the XTB template file that are to be replaced by the actual full variable name has

to start with an underscore, e.g. _Var1.Max.

Generation Rules

If the generator finds a template XTB file for a Control Module during PLC generation, it will be used to create a new XTB file with actual data present in the project like full names of Control Module variables.

The new file will have the same name as the Control Module’s full name and is placed inside the folder PLC project folder\AnimationTables.

If the Control Module is deleted in the UAG project and an incremental PLC generation is performed, then the generated XTB file for the Control Module is deleted and a message is displayed to delete the animation table manually in the Unity Pro project.

If you do not provide a template, no animation table will be created.

258 33003669 09/2014

Page 259: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generated Code: Functional Physical Elements, Control Modules and Interlocks

What is Generated?

For each Functional Physical Element Unity Application Generator generates a section in Unity Pro or several sections, if the PLC code exceeds section size.

The section/s will contain a Function Block for each Control Module of the Functional Physical Element. Each Control Module has its own specific Function Block. For details on the Function Blocks refer to the Control Module Type (SCoD) documentation.

All variables required by the Unity Pro project will also be created.

For an interlock definition the following is generated:

NOTE: Please note the following information on interlocks:

Syntactically correct interlock definition means: It is a valid logical expression. Semantically correct interlock definition means: All used variables are existing on the PLC

where the SCoD is generated. The generated Unity Pro Function Block networks in some cases have to be rearranged

manually. Existing interlock definitions from older versions of Unity Application Generator (<V1.5) will stay

as comments. For interlock definitions as comments the control engineer has to add the PLC code manually.

Separator Lines

You can group the Control Modules of a Functional Physical Element by selecting Insert Separator line from a Control Module´s context menu.

Separator lines between Control Modules will be used during code generation.

If program code that is generated for control modules, grouped by means of separator lines, does not fit into 1 section, a new section is generated.

For more details, refer to Functional Physical Element Features in UAG Basic Manual.

For... Unity Application Generator generates...

A syntactically and semantically correct interlock definition

A Function Block network realizing the interlock definition connected to the corresponding SCoD

33003669 09/2014 259

Page 260: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Example Section

Section generated for a Functional Physical Element containing 2 Control Modules:

260 33003669 09/2014

Page 261: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Example: Interlock

Function Block generated for a Control Module connected to a Function Block network generated for an interlock definition:

NOTE: See the corresponding interlock definition in Unity Application Generator, refer to UAG Basic manual - How to Build an Interlock Definition.

33003669 09/2014 261

Page 262: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generated Code: Communication

What is Generated?

What is generated depends of the type of communication.

PLC <-> PLC communication is performed as Peer Cop or I/O Scanner communication.

Code for Peer Cop Communication

Peer Cop communication is restricted to 32 words. Unity Application Generator uses 1 word for a watchdog counter, thus 31 words remain for the communication.

Unity Application Generator builds up logic to assemble in a data table all PLC variables to be communicated into one structured variable and

to disassemble for the receiving PLC the structured variable.

Unity Application Generator will configure the Peer Cop tables with memory and network addresses.

NOTE: UAG generates no global Peer Cop code for Premium PLCs.

Code for I/O Scanner Communication

I/O Scanner communication is very similar to Peer Cop communication.

The differences are the following: I/O Scanner communication is restricted to 100 words. I/O Scanner tables need only an entry in the sending PLC:

Example of Generated Function Blocks

The following figures show examples of the Function Blocks generated for Peer Cop communication.

Function block to send Peer Cop table to another PLC

262 33003669 09/2014

Page 263: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Function Block to receive Peer Cop table from another PLC

Convert datatype INT to WORD

Convert datatype WORD to INT

Convert REAL as WORD (2 words)

Convert WORD as REAL

33003669 09/2014 263

Page 264: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Convert TIME as WORD (2 words)

Convert WORD as TIME (2 words)

264 33003669 09/2014

Page 265: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generated Code: Initialization (Quantum only)

What is Generated?

The initialization section verifies that the initialization is only executed if the PLC has to perform cold start-up and warm start-up.

Example Code

Initialization control code

33003669 09/2014 265

Page 266: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generated Code: Scaling of Analog Values (Quantum only)

What is Generated?

With Quantum PLCs for the scaling of analog values the following is generated: A group called AnalogConfiguration In this group further groups for the different I/O types (local, remote, distributed) Within these groups a section for each Rack

Examples: Section AnalogConfig_Remote_Drop6 or AnalogConfig_DIO1_Drop16

Within these sections a DROP Function Block, (a XBE Function Block if a backplane expander is used) and the Function Blocks for the analog modules are generated and connected appropriately. The variables mapped to analog modules are connected to the respective EFBs (only for data types ANL_IN and ANL_OUT).

NOTE: All generated names are independent of the installed language version of Unity Application Generator. Thus the Unity Pro projects can be used with all Unity Application Generator language versions.

266 33003669 09/2014

Page 267: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generated Code: Discrete Configuration (Premium + M340 only)

What is Generated?

With Premium and M340 PLCs for discrete configuration the following is generated: A group called DiscreteConfiguration. Within this group a Program group. Within this group a section for IO Scanner management if Ethernet I/O is used.

The section contains 1 or more INT_TO_BIT and/or BIT_TO_INT function blocks for each Rack and Module.It is needed to make the single I/O points available in Unity Application Generator.

Within this group a section for Peer Cop management if Modbus Plus I/O is used.The section contains 1 or more INT_TO_BIT and/or BIT_TO_INT function blocks for each Rack and Module.It is needed to make the single I/O points available in Unity Application Generator.

NOTE: All generated names are independent of the installed language version of Unity Application Generator. Thus the Unity Pro projects can be used with all Unity Application Generator language versions.

Example for IO Scanner

The following figure shows an example for I/O Scanner:

33003669 09/2014 267

Page 268: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Example for Peer Cop

Example for Peer Cop

268 33003669 09/2014

Page 269: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for Vijeo Citect

Section A.3Generation for Vijeo Citect

Introduction

This section describes the generation of Unity Application Generator for Vijeo Citect.

What Is in This Section?

This section contains the following topics:

Topic Page

Introduction 270

Generated Variables and their Graphical Representation in the HMI 271

Generated Pages 273

Generated Vijeo Citect Database Objects 274

Generated Vijeo Citect Pages 280

33003669 09/2014 269

Page 270: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Introduction

Introduction

If you are using Vijeo Citect, the communication with the HMI is performed through standard or OPC drivers. Unity Application Generator will create all necessary variables in the Data Servers so that they can be used within the PLC and HMI.

To display the information at the HMI, Unity Application Generator generates one page for each picture object.

If a picture object is assigned to a Functional Physical Element, UAG generates the following: one animated symbol (genie) for each Control Module all necessary variables for the Control Module a graphical symbol for each free variable (optional for PLC_HMI variables)

Control Module variables are part of the animated symbols of the Control Module.

Free variables will be shown as a graphical symbol which shows the value of the variable and allows the user to change that value depending on the access rights of the operator and command settings. They will be displayed on the Functional Physical Element screen they belong to.

270 33003669 09/2014

Page 271: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generated Variables and their Graphical Representation in the HMI

What is Generated?

Unity Application Generator will generate tags for all variables of the connection type HMI and PLC_HMI.

Variables

Each variable in Unity Application Generator of the following connection types will create a variable in the HMI.

Connection types and related variables in the HMI

Example of Variables Database in Vijeo Citect

Variables database in Vijeo Citect

Connection Type

Variable in the HMI Comment

PLC_HMI variable with communication parameters

If the variable is a Control Module Type variable, it will be connected to the appropriate Control Module to animate the graphic of the Control Module.If it is a free variable, the control engineer has to plan for appropriate usage. Nevertheless a graphical symbol will be created.

HMI variable without communication parameters

These variables will be generated in the HMI only.

33003669 09/2014 271

Page 272: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Graphic Representation of Free Variables

For each free variable of communication type PLC_HMI an animated graphical symbol will be generated if the Graphical Symbol is checked and the Graphical Symbol Name is entered within the variable property window.

272 33003669 09/2014

Page 273: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generated Pages

What is Generated?

Pages are created for each picture object.

If a picture object is assigned to a Functional Physical Element, the Control Modules are displayed on that page, the Functional Physical Element belongs to.

Example

Page of Vijeo Citect

33003669 09/2014 273

Page 274: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generated Vijeo Citect Database Objects

Introduction

A Vijeo Citect project is created for each HMI defined in the Topological Model of UAG.

For every Vijeo Citect project an I/O server is created for each data server defined in the UAG configuration, i.e. each project contains the data servers and the associated tags.

For further information please refer to Vijeo Citect and Unity Application Generator, page 16.

Modifications of Tag Names

If Unity Application Generator detects a modification of a tag during the generation, its properties will be set with the actual values from the Unity Application Generator database. The Vijeo Citect database tags are updated through drivers with the actual values of PLC variables.

Generation for a Data Server

The following table gives an overview of the Vijeo Citect database objects generated by the Unity Application Generator from objects and their attributes.

Generation for a Data Server

Generation for a Channel

The path in the channel will be generated as network address for the driver.

Generation for a channel

Generation for a PLC

Generation for a PLC

Object Vijeo Citect Database Comment

Data Server I/O Server Both, primary and secondary (standby) server, will be created according to the data server configuration in UAG.

Object Vijeo Citect Database Comment

Channel represents the link between Data Server and PLC

Nothing can be generated if a Channel does not exist. Deleting a Channel deletes the generated variables of the corresponding PLC in the database.

Object Vijeo Citect Database Comment

PLC I/O device -

274 33003669 09/2014

Page 275: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for a Structural Physical Element

For a Structural Physical Element no corresponding object will be generated in the Vijeo Citect Database.

Generation for a Functional Physical Element

Generation for a Functional Physical Element

Generation for the attributes of an Functional Physical Element

Object Vijeo Citect Database Comment

Functional Physical Element

no corresponding object But the PLC_HMI or HMI variables of the Functional Physical Element will be generated as tags.

Attribute Vijeo Citect Database Comment

Name The name of the Functional Physical Element is part of: Functional Physical

Element variable names Control Module variable

names

(If defined in the Customization Editor).

Changing the name of a Functional Physical Element results in renaming the variables.

Description tag description Changing the description of a Functional Physical Element results in modifying the alarm text of its variables and of the variables of the Control Modules of the Functional Physical Element of type digital, if default alarm text is used.

PLC A PLC is connected to one Data Server, thus the PLC defines the Data Server in which the tags will be generated.

The PLC to which the Functional Physical Element is assigned cannot be changed if Functional Physical Element has been generated once.

33003669 09/2014 275

Page 276: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for a Control Module

Generation for a Control Module

Generation for the attributes of a Control Module

Object Vijeo Citect Database Comment

Control Module no corresponding object in Data Server

but the PLC_HMI or HMI variables of the Control Module will be generated as tags

Attribute Vijeo Citect Database Comment

Parent Functional Physical Element

The name of the Functional Physical Element is part of the Control Module variable names.

-

PLC A PLC is connected to one Data Server, thus the PLC defines the Data Server in which the tags will be generated.

The PLC to which the Control Module is assigned cannot be changed if Control Module has been generated once.

Name The name of the Control Module is part of the Control Module variable names.

Variables will be renamed in this Control Module.

Description used for alarm text (tag description)

Changing the description of a Control Module results in modifying the alarm text of the variables of the Control Module of type digital, if default alarm text is used.

276 33003669 09/2014

Page 277: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for a Variable

Generation for a variable

Generation for attributes of a variable

Object Vijeo Citect Database Comment

Variable tag in Vijeo Citect database By default the variable name is generated as defined in the Customization Editor → Name Creation Rules.

Attribute Vijeo Citect Database Comment

Name The name of the variable is part of tag name.

The name can only be changed for free variables.

Description tag description Max. 48 characters

Dead Band ModeDead Band Value

dead band If the value is specified in absolute mode, then the value is transformed to a percentage value based on the variable’s scaling properties.

Alarm alarm options / enable alarming

-

33003669 09/2014 277

Page 278: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Alarm Condition 1.. digital alarms A digital alarm is created for every BOOL variable that has an alarm defined in the UAG.The alarm references the Citect variable that is created, and contains the alarm text as defined in the UAG.The Cicode expression for that alarm will be inverted with NOT in the case that the alarm is defined as active in the off state in the UAG.

advanced alarms A advanced alarm is created for any limit based alarm defined in the UAG.Alarm tags generated in Vijeo Citect are named according to the Citect variable name followed by ’_’ and the index of the alarm in the UAG. If bit operators are used in UAG the bit number (_bnn) is appended instead of the alarm index.The alarm is generated with a Cicode expression that reflects a comparison between the variable value and the alarm limit as defined in the UAG.In UAG under Alarm → Operator use Free Expression to define any Cicode expression for an alarm.Refer to Alarming Parameters (see page 36).

alarm categories Alarm categories are generated for each combination of alarm group and alarm priority defined in the UAG.Citect labels for each alarm category are created.Also created is a Citect group for each UAG alarm group as well as a Citect group for each UAG alarm priority.In the Customization Editor under Data → Alarm Priorities you can define further details for the alarm categories.Refer to Alarming Parameters (see page 36).

Attribute Vijeo Citect Database Comment

278 33003669 09/2014

Page 279: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Archive trend If a variable in UAG has the archive field set to Historic then a Citect trend tag is created. The trend tag name is the same as the

variable name. The trend type is set to periodic with a

sample period defined by the Archive Sample Rate property of the variable.

The trend file has the same name as the variable and is placed in the directory defined in the Customization Editor.

Refer to Trend Configuration (see page 32).

Measurement Unit Engineering Units -

Scaling minScaling max

Engineering Zero ScaleEngineering Full Scale

-

Raw minRaw max

Raw Zero ScaleRaw Full Scale

-

Attribute Vijeo Citect Database Comment

33003669 09/2014 279

Page 280: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generated Vijeo Citect Pages

Introduction

The following table gives an overview of the Vijeo Citect pages generated by the Unity Application Generator from objects and their attributes.

Generation for an HMI

Generation for an HMI

Generation for attributes of an HMI

Generation for a Picture

Generation for a Picture

Generation for attributes of a Picture

Generation for a Control Domain

Generation for a Control Domain

Object Vijeo Citect Comment

HMI project HMI pages are located in the path which you have entered in the UAG Customization editor.

Attribute Vijeo Citect Comment

Name name of project -

Object Vijeo Citect Comment

Picture page -

Attribute Vijeo Citect Comment

Picture Name page name -

Object Vijeo Citect Comment

Control Domain Alarm Area An Area label is produced for each Control Domain defined in the UAG project. Each alarm generated is assigned the Area based on the UAG control domain of the Functional Physical Element the variable belongs to. In Vijeo Citect, users need to be created and assigned to these areas in order for UAG generated alarms to be available at runtime.

280 33003669 09/2014

Page 281: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for a Functional Physical Element

Generation for a Functional Physical Element

Generation for attributes of a Functional Physical Element

Generation for a Control Module

Generation for a Control Module

Generation for attributes of a Control Module

Object Vijeo Citect Comment

Functional Physical Element

no corresponding object

-

Attribute Vijeo Citect Comment

Name The name of the Functional Physical Element is part of: Variable names Symbol names

(If defined in the Customization Editor).

Changing the name of a Functional Physical Element results in renaming the Vijeo Citect symbols.

Picture Defines the page, where objects belonging to this Functional Physical Element, are generated.

Changing the picture assignment of a Functional Physical Element results in the removal of HMI symbols belonging to this Functional Physical Element from the old picture and inserting it in the new picture.

Object Vijeo Citect Comment

Control Module Vijeo Citect symbol (genie)

A symbol (genie) is generated for every Control Module on that page, that is associated to its Functional Physical Element.

Attribute Vijeo Citect Comment

Parent Functional Physical Element

Defines Vijeo Citect page.

A Control Module can be moved to another Functional Physical Element by drag and drop in the Physical Model of Unity Application Generator. Changing Control Module Parent Functional Physical Element results in moving all free variable symbol controls and Control Module symbols from old page to new one.

33003669 09/2014 281

Page 282: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for a Variable

Generation for a variable

Generation for attributes of a variable

Name Name of the Control Module is part of variable names and symbol names.

Changing the name of a Control Module results in renaming the Vijeo Citect symbols.

HMI symbol Defines the genie library and name to use for the control module.

If multiple HMI symbols are defined in the SCoD and if the property is configured to be changeable for the control modules, then the user can select a different symbol from the list causing the deletion of a previously generated genie and the insertion of a new genie into the page.

Attribute Vijeo Citect Comment

Object Vijeo Citect Comment

Variable Symbol (Genie) -

Attribute Vijeo Citect Comment

Graphical symbol

Symbol (Genie) An animated graphical symbol will be generated if Graphical symbol is checked in the variable property window (in the General tab).Changing the check box for Graphical symbol results in creating or deleting a free variable symbol on corresponding page.

Graphical symbol name

Symbol (genie) name Name of the symbol for the free variable.

Name Variable name The name can only be changed for free variables.

282 33003669 09/2014

Page 283: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for Monitor Pro

Section A.4Generation for Monitor Pro

Introduction

This section describes the generation of Unity Application Generator for Monitor Pro.

What Is in This Section?

This section contains the following topics:

Topic Page

Introduction 284

Generated Variables and their Graphical Representation in the HMI 285

Generated Screens 287

Generated Monitor Pro Database Objects 288

Generated Monitor Pro Pictures 292

33003669 09/2014 283

Page 284: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Introduction

Introduction

If you are using Monitor Pro, the communication with the HMI is performed through standard Ethernet or OPC drivers. Unity Application Generator will create all necessary variables in the Data Servers so that they can be used within the PLC and HMI.

To display the information at the HMI, Unity Application Generator generates the following: 1 screen for each Picture defined in UAG 1 animated symbol for each Control Module all necessary variables for the Control Module 1 graphical symbol for each free variable (optional for PLC_HMI variables)

Control Module variables are part of the animated symbols of the Control Module.

Free variables will be shown as graphical symbols which show the value of the variables and allow the user to change that value depending on the access rights of the operator and command settings. They will be displayed on the screen created for the Picture associated to their Functional Physical Element.

284 33003669 09/2014

Page 285: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generated Variables and their Graphical Representation in the HMI

What is Generated?

Unity Application Generator will generate tags for all variables of the connection type HMI and PLC_HMI.

Variables

Each variable in Unity Application Generator of the following connection types will create a variable in the HMI.

Connection types and related variables in the HMI:

Connection Type

Variable in the HMI Comment

PLC_HMI Variable with communication parameters

If the variable is a Control Module Type variable, it will be connected to the appropriate Control Module to animate the graphic of the Control Module.If it is a free variable, the control engineer has to plan for appropriate usage. Nevertheless a graphical symbol will be created.

HMI Variable without communication parameters

These variables will be generated in the HMI only.

33003669 09/2014 285

Page 286: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Example of Variables Database in Monitor Pro

Variables database in Monitor Pro:

Graphic Representation of Free Variables

For each free variable of communication type PLC_HMI an animated graphical symbol will be generated if the Graphical Symbol is checked and the Graphical Symbol Name is entered within the variable property window.

286 33003669 09/2014

Page 287: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generated Screens

What is Generated?

Screens are created for each Picture defined in UAG.

Control Modules are displayed on the screen associated to the Functional Physical Element they belong to.

Example

Configuration screen of Monitor Pro.

33003669 09/2014 287

Page 288: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generated Monitor Pro Database Objects

Introduction

A Monitor Pro Server node corresponds to a Unity Application Generator Data Server. Several Data Servers can be defined. Each Data Server has to be deployed on a different Monitor Pro Server node.

A data server’s secondary (redundant) network configuration is not used for Monitor Pro.

There will be defined one Data Server for each Monitor Pro Server system in the Unity Application Generator project. Unity Application Generator will create all tags corresponding to the variables of type HMI or PLC_HMI defined in the project.

Modifications of Tag Names

If Unity Application Generator detects a modification of a tag during the generation, all its properties will be set with the actual values from the Unity Application Generator database. The Monitor Pro database tags are updated through drivers with the actual values of PLC variables.

Generation for a Data Server

The following table gives an overview of the Monitor Pro database objects generated by the Unity Application Generator from objects and their attributes.

Generation for a Data Server

Generation for a Channel

The path in the channel will be generated as IP network address for the TCP/IP driver

Generation for a channel

Object Monitor Pro Database

Comment

Data Server Monitor Pro tag database

The user has the possibility to set the database path (View → Options → Monitor Pro).

Object Monitor Pro Database

Comment

Channel Represents the link between Data Server and PLC

Nothing can be generated if a Channel does not exist. Deleting a Channel deletes all generated variables of the corresponding PLC in the Monitor Pro database.

288 33003669 09/2014

Page 289: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for a PLC

Generation for a PLC

Generation for a Structural Physical Element

For a Structural Physical Element no corresponding object will be generated in the Monitor Pro Database.

Generation for a Functional Physical Element

Generation for a Functional Physical Element

Generation for the attributes of an Functional Physical Element

Object Monitor Pro Database

Comment

PLC No corresponding object in Data Server

-

Object Monitor Pro Database

Comment

Functional Physical Element

No corresponding object in the Data Server

-

Attribute Monitor Pro Database

Comment

Name The name of the Functional Physical Element is part of: Functional

Physical Element variable names

Control Module variable names

(If defined in the Customization Editor).

Changing the name of a Functional Physical Element results in renaming the variables.

PLC A PLC is connected to 1 Data Server, thus the PLC defines the Data Server in which the tags will be generated.

The PLC to which the Functional Physical Element is assigned cannot be changed if Functional Physical Element has been generated once.

33003669 09/2014 289

Page 290: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for a Control Module

Generation for a Control Module

Generation for the attributes of a Control Module

Description Tag description Changing the description of a Functional Physical Element results in modifying the alarm text of all its variables and of all variables of the Control Modules of the Functional Physical Element of type digital, if default alarm text is used.

Attribute Monitor Pro Database

Comment

Object Monitor Pro Database

Comment

Control Module No corresponding object in Data Server.

But all PLC_HMI or HMI variables of the Control Module will be generated as tags.

Attribute Monitor Pro Database

Comment

Parent Functional Physical Element

The name of the Functional Physical Element is part of the Control Module variable names.

-

PLC A PLC is connected to one Data Server, thus the PLC defines the Data Server in which the tags will be generated.

The PLC to which the Control Module is assigned cannot be changed if Control Module has been generated once.

Name The name of the Control Module is part of the Control Module variable names.

Variables will be renamed in this Control Module.

Description Used for alarm text (tag description)

Changing the description of a Control Module results in modifying the alarm text of all variables of the Control Module of type digital, if default alarm text is used.

290 33003669 09/2014

Page 291: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for a Variable

Generation for a variable

Generation for attributes of a variable

Object Monitor Pro Database

Comment

Variable Tag in Monitor Pro database

By default the variable name is generated as defined in the Customization Editor → Name Creation Rules.

Attribute Monitor Pro Database

Comment

Name The name of the variable is part of tag name.

The name can only be changed for free variables.

Description Tag description Max. 80 characters

Communication Frame

I/O Translator Dataset Definition

Name of the communication frame the variable is assigned to. Corresponds to the name of one of the hmi_communication elements in the channel element. The value can be empty.

Alarm Alarm Options /Enable Alarming

Alarm Priority 1..8 Alarm Priority 1 to 8 alarm priorities can be possible for non-boolean variables. For boolean variables just 1 alarm can be possible.Possible value can be set up in customization (1..9999). Example values are: 1 - low 2 - medium 3 - high 4 - urgent

Alarm Limit 1..8 Alarm Limit: Depending on data type

1 to 8 alarm limits can be possible for non-boolean variables. For boolean variables just 1 alarm can be possible.

Alarm Text 1..8 Alarm Text Alarm text for the specific alarm limit.1 to 8 alarm texts can be possible for non-boolean variables. For boolean variables just 1 alarm can be possible.

Alarm Group Alarm For grouping the alarm variables. All alarms of a variable can be in the same alarm group.

Archive Archive The variable can be in three different states for archiving: Not_Assigned, No or Historic.

Archive Name Archive If the variable is marked for archiving, the user has to define the archive name. The user can choose between Not_Assigned or the name of the archive.

33003669 09/2014 291

Page 292: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generated Monitor Pro Pictures

Introduction

The following table gives an overview of the Monitor Pro pictures generated by the Unity Application Generator from objects and their attributes.

Generation for an HMI

Generation for an HMI

Generation for attributes of an HMI

Generation for a Control Domain

Generation for a Control Domain

Generation for a PLC

Generation for a PLC

Object Monitor Pro Pictures Comment

HMI set of Monitor Pro pictures

HMI pictures are located in the path which the user has entered (View → Options → Monitor Pro). Under this path the user will find a mimic files directory where the pictures will be stored.

Attribute Monitor Pro Pictures Comment

Name name of generation file

When the Monitor Pro HMI project is generated a file is created: The name of the file is HMINAME.UAG. The user will find the file within the mimics directory. Changing the path will result in renaming generation file.

Object Monitor Pro Pictures Comment

Control Domain represents the link between HMI and Functional Physical Element and Control Modules

Nothing can be generated for HMI if the Control Domain does not exist.Deleting of a Control Domain, deletes all generated Control Module symbols in Monitor Pro pictures.

Object Monitor Pro Pictures Comment

PLC no corresponding object in HMI

-

292 33003669 09/2014

Page 293: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for a Structural Physical Element

For a Structural Physical Element no corresponding picture will be generated in Monitor Pro.

Generation for a Functional Physical Element

Generation for a Functional Physical Element

Generation for attributes of a Functional Physical Element

Generation for a Control Module

Generation for a Control Module

Object Monitor Pro Pictures Comment

Functional Physical Element

no corresponding object

-

Attribute Monitor Pro Pictures Comment

Name The name of the Functional Physical Element is part of the name of the symbols.(If defined in the Customization Editor).

Changing the name of an Functional Physical Element results in renaming the Monitor Pro symbols.

PLC - The PLC to which the Functional Physical Element is assigned cannot be changed if the Functional Physical Element has been generated once.

Control Domain defines the HMI in which the associated picture is generated

If the HMI is different, the Monitor Pro symbol´s controls will be removed from the associated picture in the current HMI and a new picture will be created in the new HMI.

Object Monitor Pro Pictures Comment

Control Module Monitor Pro symbol in the picture associated to the Functional Physical Element

-

33003669 09/2014 293

Page 294: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for attributes of a Control Module

Attribute Monitor Pro Pictures Comment

Parent Functional Physical Element

defines Monitor Pro pictures

A Control Module can be moved to another Functional Physical Element by drag and drop in the Physical Model of Unity Application Generator. Changing Control Module Parent Functional Physical Element results in moving all free variable Monitor Pro symbol controls and Control Module Monitor Pro symbol´s from old picture to new one.

PLC - no picture generation if no PLC is assigned to the Functional Physical Element

Name The name of the Control Module is part of Control Module Monitor Pro symbol name and free Control Module variable Monitor Pro symbol names.

Changing the name of a Control Module results in renaming all free variables Monitor Pro symbol of the Control Module, and Control Module Monitor Pro symbol.

HMI symbol Defines the library and name to use for the control module.

If multiple HMI symbols are defined in the SCoD and if the property is configured to be changeable for the control modules, then the user can select a different symbol from the list causing the deletion of a previously generated symbol and the insertion of a new symbol into the page.

294 33003669 09/2014

Page 295: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for a Variable

Generation for a variable

Generation for attributes of a variable

Object Monitor Pro Pictures Comment

Variable property of Control Module or Free variable Monitor Pro symbol

-

Attribute Monitor Pro Pictures Comment

Graphical symbol

graphical symbol An animated graphical symbol will be generated if Graphical symbol is checked in the variable property window (in the General tab).Changing the check box for Graphical symbol results in creating or deleting a free variable Monitor Pro symbol on corresponding Monitor Pro picture.

Graphical symbol name

graphical symbol name

Name of the symbol for the free variable.

Name variable name The name can only be changed for free variables.

33003669 09/2014 295

Page 296: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for iFIX

Section A.5Generation for iFIX

Introduction

This section describes the generation of Unity Application Generator for iFIX.

What Is in This Section?

This section contains the following topics:

Topic Page

Characterization 297

Generated Variables and their Graphical Representation in the HMI 298

Generated Screens 300

Generated iFIX Database Objects 301

Generated iFIX Pictures 306

Generated iFIX Driver Configuration from Unity Application Generator Point of View 311

Generated iFIX Driver Configuration from the Driver Point of View 313

296 33003669 09/2014

Page 297: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Characterization

Characterization

If you are using iFIX the communication with the HMI is performed through iFIX drivers. Unity Application Generator will create all necessary variables in the Data Servers so that they can be communicated between PLC and HMI.

To display the information at the HMI, Unity Application Generator generates the following: One screen for each Functional Physical Element One animated symbol for each Control Module All necessary variables for the Control Module A graphical symbol for each free variable (optional for PLC_HMI variables)

Control Module variables are part of the animated symbols of the Control Module.

Free variables will be shown as a graphical symbol which shows the value of the variable and allows the user to change that value depending on the access rights of the operator and command settings. They will be displayed on the Functional Physical Element screen they belong to.

33003669 09/2014 297

Page 298: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generated Variables and their Graphical Representation in the HMI

What is Generated?

Unity Application Generator will generate tags for all variables of the connection type HMI and PLC_HMI.

Variables

Each variable in Unity Application Generator of the following connection types will create a variable in the HMI.

Connection types and related variables in the HMI:

Example of Variables Database in iFIX

Variables database in iFIX:

Connection Type

Variable in the HMI Comment

PLC_HMI Variable with communication parameters

If the variable is a Control Module Type variable, it will be connected to the appropriate Control Module to animate the graphic of the Control Module.If it is a free variable, the control engineer has to plan for appropriate usage. Nevertheless a graphical symbol will be created.

HMI Variable without communication parameters

These variables will be generated in the HMI only.

298 33003669 09/2014

Page 299: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Graphic Representation of Free Variables

For each free variable of communication type PLC_HMI an animated graphical symbol will be generated if Graphical symbol is checked in the variable property window (in the General tab).

33003669 09/2014 299

Page 300: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generated Screens

What is Generated?

Screens are created for: each Functional Physical Element.

Control Modules are displayed on the Functional Physical Element screen they belong to.

Example

Configuration screen of Intellution´s iFIX

300 33003669 09/2014

Page 301: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generated iFIX Database Objects

Introduction

A SCADA node corresponds to a Unity Application Generator Data Server. Several Data Servers can be defined. Each Data Server has to be deployed on a different iFIX SCADA node.

A data server´s secondary (redundant) network configuration is not used for iFIX.

The generation for SCADAs consists of creating an iFIX database (PDB file in the ...\DYNAMICS\PDB directory) for each Data Server defined in the Unity Application Generator project. Unity Application Generator will create all tags corresponding to the variables of type HMI or PLC_HMI defined in the project.

Modifications of Tag Names

iFIX does not allow to change tag names. Thus, changing a tag name will be handled by Unity Application Generator as deleting the old tag and creating a new one with a new name.

If Unity Application Generator detects a modification of a tag during the generation, all its properties will be set with the actual values from the Unity Application Generator database. The iFIX database tags are updated through drivers with the actual values of PLC variables.

Generation for a Data Server

The following table gives an overview of the iFIX database objects generated by the Unity Application Generator from objects and their attributes.

Generation for a Data Server

Generation for attributes of a Data Server

Object iFIX Database Comment

Data Server iFIX tag database The database is located in <iFIX path>\PDB\DataServerName.pdb

Attribute iFIX Database Comment

Name Name of iFIX databaseName of generation file

Changing the name of a Data Server will result in renaming the PDB file and the generation file.

33003669 09/2014 301

Page 302: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for a Channel

Generation for a channel

Generation for a PLC

Generation for a PLC

Generation for a Control Domain

Generation for a Control Domain

Generation for the attributes of a Control Domain

Generation for a Structural Physical Element

For a Structural Physical Element no corresponding object will be generated in the iFIX Database.

Generation for a Functional Physical Element

Generation for a Functional Physical Element

Object iFIX Database Comment

Channel Represents the link between Data Server and PLC

Nothing can be generated if a Channel does not exist. Deleting a Channel deletes all generated variables of the corresponding PLC in the iFIX database.

Object iFIX Database Comment

PLC No corresponding object in Data Server

Object iFIX Database Comment

Control Domain No corresponding object in the Data Server

Attribute iFIX Database Comment

Name Name of iFIX Alarm Area. Part of Security Area name of iFIX tag

Changing the Control Domain name results in changing the Alarm Area and Security Area for all tags of that Control Domain.The names of the Alarm Area and Security Areas have to be changed manually in iFIX SCU.

Object iFIX Database Comment

Functional Physical Element

No corresponding object in the Data Server

302 33003669 09/2014

Page 303: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for the attributes of an Functional Physical Element

Generation for a Control Module

Generation for a Control Module

Attribute iFIX Database Comment

Name The name of the Functional Physical Element is part of: Functional

Physical Element variable names

Control Module variable names

(If defined in the Customization Editor).

Since iFIX tag names cannot be changed, changing the name of a Functional Physical Element results in deleting all its variables and all variables of its Control Modules, and re-creating them with new names.

PLC A PLC is connected to one Data Server, thus the PLC defines the Data Server in which the tags will be generated.

The PLC to which the Functional Physical Element is assigned cannot be changed if Functional Physical Element has been generated once.

Control Domain Used for Alarm Areas and Security Areas of Variables

Changing the Control Domain of a Functional Physical Element results in modifying Alarm Area and Security Area of all its variables and all variables of its Control Modules.Note: If you change the name of a Control Domain you have to change the name of the Alarm Area (=ControlDomainName) and the names of all Security Areas (=ControlDomainName_AccessLevel) in iFIX SCU.

Description Used for alarm text (tag description)

Changing the description of a Functional Physical Element results in modifying the alarm text of all its variables and of all variables of its Control Modules of type digital, if default alarm text is used.

Object iFIX Database Comment

Control Module No corresponding object in Data Server, but all PLC_HMI or HMI variables of the Control Module will be generated as tags.

33003669 09/2014 303

Page 304: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for the attributes of a Control Module

Generation for an Interlock

Interlocks have no counter part in the HMI application’s logic. But the ActiveX control which represents the Control Module in the HMI displays the current interlock state of the Control Module. This is outside of the scope the Unity Application Generator implementation, but is implemented for each individual SCoD.

Generation for a Variable

Generation for a variable

Attribute iFIX Database Comment

Parent Functional Physical Element

The name of the Functional Physical Element is part of the Control Module variable names.(If defined in the Customization Editor).

A Control Module can be moved to another Functional Physical Element by drag and drop in the physical Model of Unity Application Generator. Since iFIX tag names cannot be changed, changing Control Module Parent Functional Physical Element results in deleting all variables of the Control Module in the Data Server where they have been generated.

PLC A PLC is connected to one Data Server, thus the PLC defines the Data Server in which the tags will be generated.

The PLC to which the Control Module is assigned cannot be changed if Control Module has been generated once.

Name The name of the Control Module is part of the Control Module variable names.

Since iFIX tag names cannot be changed, changing the name of a Control Module results in deleting all variables of the Control Module, and recreating them with new names.

Description Used for alarm text (tag description)

Changing the description of a Control Module results in modifying the alarm text of all variables of the Control Module of type digital, if default alarm text is used.

Object iFIX Database Comment

Variable Tag in iFIX database By default the variable name is generated as defined in the Customization Editor → Name Creation Rules.

304 33003669 09/2014

Page 305: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for attributes of a variable

Attribute iFIX Database Comment

Name The name of the variable is part of tag name.

The name can only be changed for free variables.

Description Tag description Max. 40 characters

Command Defines how the tags can be controlled by the HMI

Applies only to PLC_HMI variables. Free variables will be IN/OUT.IN or IN/OUT variables: Operator/Parameter: The variable can be

changed by the HMI: Advanced Options → Enable Output = Yes.

Logic/Constant: The variable cannot be changed by the HMI: Advanced Options → Enable Output = No.

Alarm Alarms/Alarm Options/Enable Alarming

Only BOOL variables can be alarms, generated as DI alarm tags.In Advanced → Alarm Extension Fields → Alarm Field1 Unity Application Generator generates the name of the picture. With a small script one can implement a jump to the picture which contains the variable with the alarm.

State0Text Basic/Labels Open Only DI tags.Label associated with 0 State.

State1Text Basic/Labels Close Only DI tags.Label associated with 1 State.

Alarm Priority Alarms/Alarm Priority Only DI alarm tags. Possible values: L as Low, M as Medium, H as High

Alarm State Alarms/Alarm Type: 1 = Close, 0 = Open

Only DI alarm tags.Value 0 or 1 for which Alarm occurs

Alarm Text Advanced/Alarm Extension Fields/Alarm Field 1

Only DI alarm tags.Replace Tag Description for Alarm Tags

Scaling Min Basic/Engineering Units/Low Limit

Only AI tags.

Scaling Max Basic/Engineering Units/High Limit

Only AI tags.

Measurement Unit

Basic/Engineering Units/Units

Only AI tags.

Access Level Advanced/Security Areas

The access level is used with the Control Domain to define the Security Area of this variable. See above.

33003669 09/2014 305

Page 306: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generated iFIX Pictures

Introduction

The following table gives an overview of the iFIX pictures generated by the Unity Application Generator from objects and their attributes.

Generation for an HMI

Generation for an HMI

Generation for attributes of an HMI

Generation for a Control Domain

Generation for a Control Domain

Generation for attributes of a Control Domain

Object iFIX Pictures Comment

HMI set of iFIX pictures HMI pictures are located in IFIX PATH\PIC\PICTURENAME.GRF

Attribute iFIX Pictures Comment

Name name of generation file

When iFIX HMI project is generated a file is created: <IFIX PATH>\PIC\HMINAME.GIL.Changing the path will result in renaming generation file.

Object iFIX Pictures Comment

Control Domain represents the link between HMI, Functional Physical Element and Control Modules

Nothing can be generated for HMI if the Control Domain does not exist. Deleting a Control Domain, deletes all generated Control Module ActiveX in iFIX pictures.

Attribute iFIX Pictures Comment

Name property of each Control Module or Free Variable ActiveX

Changing the Control Domain name results in changing property for all ActiveXs of that Control Domain. If the new Control Domain belongs to another HMI, all generated Control Module ActiveXs in iFIX pictures are deleted from the old HMI and created in the new HMI.

306 33003669 09/2014

Page 307: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for a PLC

Generation for a PLC

Generation for attributes of a PLC

Generation for a Structural Physical Element

For a Structural Physical Element no corresponding picture will be generated in iFIX.

Generation for a Functional Physical Element

Generation for a Functional Physical Element

Generation for attributes of a Functional Physical Element

Object iFIX Pictures Comment

PLC no corresponding object in HMI

Attribute iFIX Pictures Comment

Name used in alias for each ActiveX

Object iFIX Pictures Comment

Functional Physical Element

1 iFIX picture for each Functional Physical Element

Note: iFIX picture names can not start with a digit!

Attribute iFIX Pictures Comment

Name The name of the Functional Physical Element is part of the name of the associated picture and all its ActiveXs or Dynamos.

Changing the name of a Functional Physical Element results in renaming the iFIX picture and all contained ActiveXs or Dynamos.

PLC - The PLC to which the Functional Physical Element is assigned cannot be changed if the Functional Physical Element has been generated once.

Control Domain defines the HMI in which the associated picture is generated

Changing the Control Domain of a Functional Physical Element results in modifying the Control Domain property for all ActiveXs or Dynamos of the iFIX picture. If the HMI is different, the ActiveX controls or Dynamos will be removed from the picture in the current HMI and a new picture will be created in the new HMI.

Description description property of iFIX picture

Changing the description of a Functional Physical Element results in modifying description property of iFIX picture.

33003669 09/2014 307

Page 308: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for a Control Module

Generation for a Control Module

Generation for attributes of a Control Module

Object iFIX Pictures Comment

Control Module ActiveX or Dynamo in the Functional Physical Element iFIX picture

-

Attribute iFIX Pictures Comment

Parent Functional Physical Element

defines iFIX pictures A Control Module can be moved to another Functional Physical Element by drag and drop in the Physical Model of Unity Application Generator. Changing Control Module Parent Functional Physical Element results in moving all free variable ActiveX controls or Dynamos and Control Module ActiveXs or Dynamos from old picture to new one.

PLC - The PLC to which the Control Module is assigned cannot be changed if Control Module has been generated once.

Name The name of the Control Module is part of: Control Module

ActiveX or Dynamo name

free Control Module variable ActiveX or Dynamo names

(If defined in the Customization Editor).

Changing the name of a Control Module results in renaming all free variables ActiveX or Dynamo of the Control Module, and Control Module ActiveX or Dynamo.

Description description of the Control Module

Changing the description of a Control Module results in changing that property of Control Module ActiveX or Dynamo.

HMI symbol Defines the library and name to use for the control module.

If multiple HMI symbols are defined in the SCoD and if the property is configured to be changeable for the control modules, then the user can select a different symbol from the list causing the deletion of a previously generated symbol and the insertion of a new symbol into the page.

308 33003669 09/2014

Page 309: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for an Interlock

Interlocks have no counter part in the HMI applications logic. But the ActiveX control or Dynamo which represents the Control Module in the HMI displays the current interlock state of the Control Module. This is outside of the scope the Unity Application Generator implementation, but is implemented for each individual SCoD.

Generation for a Variable

Generation for a variable

Generation for attributes of a variable

Object iFIX Pictures Comment

Variable property of Control Module or Free variable ActiveX

The property name is: IAT_VariableName_VariableProperty (Control Module variable) or IAT_VariableProperty (Free variable).

Attribute iFIX Pictures Comment

Graphical symbol

graphical symbol An animated graphical symbol will be generated if Graphical symbol is checked in the variable property window (in the General tab).Changing the check box for Graphical symbol results in creating or deleting a free variable ActiveX on corresponding iFIX picture.

Name variable name The name can only be changed for free variables.

Description description in ActiveX only for free variables

Command defines how the variable is connected to the Function Block instance

Applies only to PLC_HMI variables. Other variables and free variables will be IN/OUT.IN or IN/OUT variables: Operator/Parameter: The variable can be

changed by the ActiveX. Logic/Constant: The variable cannot be

changed by the ActiveX

Alarm alarm true or false Only BOOL variables can be alarms, generated as DI alarm tags.

State0Text label associated with 0 State

only DI tags

State1Text for DI variable only DI tags

Alarm State value 0 or 1 for which alarm occurs

only DI alarm tags

Alarm Text alarm text only DI alarm tags

33003669 09/2014 309

Page 310: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Boundary Min lower boundary to which the operator can set the value

only AI tags

Boundary Max upper boundary to which the operator can set the value

only AI tags

Display Format format how to display the value

only AI tags

Measurement Unit

engineering unit only AI tags

Access Level security area The access level is used with the Control Domain to define the Security Area of this variable.

Attribute iFIX Pictures Comment

310 33003669 09/2014

Page 311: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generated iFIX Driver Configuration from Unity Application Generator Point of View

Introduction

The following tables give an overview of the iFIX driver configuration generated by Unity Application Generator from the point of view of Unity Application Generator.

A data server´s secondary (redundant) network configuration is not used for iFIX.

Driver Configuration for a Data Server

Generated driver configuration for a Data Server

Generated driver configuration for the attributes of a Data Server

Driver Configuration for a Channel

Generated driver configuration for a Channel

Generated driver configuration for the attributes of a Channel

Object iFIX Driver Comment

Data Server A driver configuration file for each Data Server

Attribute iFIX Driver Comment

Name Used to define configuration file name Changing Data Server name results in changing the configuration file name.

Object iFIX Driver Comment

Channel A channel and a Control Module for each Channel between PLC and Data Server

Deleting a Channel results in deleting channel, Control Module and corresponding DataBlocks in the driver configuration.

Attribute iFIX Driver Comment

ID Used to define a driver channel as Channel_<ID>Used to define a driver device as CH<ID>

In iFIX a channel name is limited to maximum 12 characters. Therefore the Channel name specified in Unity Application Generator is not used. A name composed of the word CHANNEL and a serial number is created instead.

33003669 09/2014 311

Page 312: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

HMI Communication

Used to define Datablocks driver configuration

I/O Addresses are updated by Memory Mapper.Datablock Name: <ID>_<BlockType>_<n><ID> Channel ID<n> Block index: Number of

DataBlocks depends on maximum length for each data type

Attribute iFIX Driver Comment

312 33003669 09/2014

Page 313: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generated iFIX Driver Configuration from the Driver Point of View

Introduction

The following tables give an overview of the generated values for the iFIX driver objects from the point of view of the driver.

Values for a Channel

Values generated for the attributes of a Channel:

Values for a Device

Values generated for the attributes of a Channel

Attribute Value Comment

Name Channel_<ID> <ID> : Channel ID in Unity Application Generator

Description Channel_<ID> <ID> : Channel ID in Unity Application Generator

Attribute Value Comment

Name Channel_<ID> <ID> : Channel ID in Unity Application Generator

Description Channel_<ID> <ID> : Channel ID in Unity Application Generator

Addressing type

6 Digit

Bit base 0-15

33003669 09/2014 313

Page 314: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Values for a DataBlock

Values generated for the attributes of a DataBlock

Attribute Value Comment

Name Corresponding names will be: For Synoptic: <ID>_SBOOL_<n> <ID>_SWORD_<n> <ID>_SDINT_<n> <ID>_SREAL_<n>

For Event: <ID>_EBOOL_<n> <ID>_EWORD_<n> <ID>_EDINT_<n> <ID>_EREAL_<n>

For Parameter: <ID>_PBOOL_<n> <ID>_PWORD_<n> <ID>_PDINT_<n> <ID>_PREAL_<n>

<ID> Channel ID in Unity Application Generator

<n> Block index: Number of DataBlocks depends on maximum length for each data type

Description Same as Name

Starting address

Unity Application Generator value

Ending address

Unity Application Generator value Block length = 512 for BOOL and 125 for Other DataType

Data type Driver types

314 33003669 09/2014

Page 315: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for a Generic HMI

Section A.6Generation for a Generic HMI

Generation for a Generic HMI

Introduction

If you are using an HMI other than Monitor Pro or iFIX (generic HMI), Unity Application Generator provides all tag data necessary for a further importing into your HMI.

What is Generated?

For the use of a generic HMI Unity Application Generator generates a XML file and a customizable text file for each Data Server containing all tag information necessary for the process visualization.

Customization of the text file is done with a user provided stylesheet file (XSL file).

XML (Extensible Markup Language) and XSL (Extensible Stylesheet Language) are specifications by the W3C (World Wide Web Consortium), see http://www.W3.org for details.

The XML and XSL File

The XML files are generated in the directories specified for each Data Server as application path with the name dataservername.xml.

The XML file generated for the use of a generic HMI contains all data necessary for process visualization like PLC names, network addresses, variable names, addresses, data types, comments as configured with Unity Application Generator.

The XML file is a text file that contains the data in a hierarchical structure and can be viewed with tools like text editors or Microsoft Internet Explorer.

The XSL (rather XSLT file, Extensible Stylesheet Language Transformation) file is specified in the Customization editor and defines how the content of the XML file has to be reformatted so that the individual HMI can read the data. This reformatting is done automatically during generation and results in one or more files as specified in Customization editor.

Unity Application Generator installs the stylesheet file GenericHMICSV.xsl with which the generated XML file is transformed to a CSV file as it was generated in previous versions of Unity Application Generator. Other stylesheets have to be provided by the user.

The XSL file is a text file that can be created with simple text editors. Links to tutorials and specialized tools can be found in the internet on www.w3.org.

33003669 09/2014 315

Page 316: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Provided Style Sheet

A style sheet (OFSDeviceConfig.xsl) will be provided, which can be assigned to an export format for a data server, to let UAG automatically generate a registry import file (*.reg file) for configuring the device aliases in OFS, Schneider Electric’s OPC server.

The OFS configuration tool can not be used to modify these configuration settings, since the tool is not able to import the data from the registry to its configuration database.

316 33003669 09/2014

Page 317: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for Net Partners

Section A.7Generation for Net Partners

What is Generated?

This section describes the generation of Unity Application Generator for Net Partners.

What Is in This Section?

This section contains the following topics:

Topic Page

Generation for Net Partners 318

Net Partner Variables: CSV File Format 319

33003669 09/2014 317

Page 318: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Generation for Net Partners

Introduction

Net Partners are devices which cannot be programmed directly by Unity Application Generator. Nevertheless the variables which are related to a Net Partner can be exported in a CSV file to be imported into the Net Partner device.

NOTE: The generation of the CSV file for the Net Partners is done by the menu path Net Partner → Properties → Export.

What is Generated?

Unity Application Generator generates a CSV file which containes all variables which have been put into the communication table of the Channel for the Net Partner by drag and drop.

The CSV File

The CSV file contains all of the parameters of the variable necessary for the Net Partner to access the variables in the PLC, for example name, PLC addresses, data type, and so on.

The CSV file can for example be opened by Microsoft Excel and adjusted in a simple way to fit order and format which the programming software of the Net Partner can import.

318 33003669 09/2014

Page 319: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Net Partner Variables: CSV File Format

Note

The numbers in the following tables are only for your overview, they are not contained in the CSV file!

CSV File Format

For each variable of a Net Partner the CSV file contains a line. The line contains the following elements, separated by a separator (comma or semicolon).

plc_name: Name of PLC to which variable belongs. network_type: Valid strings are: ModbusPlus and Ethernet. network_address: Network address of PLC, either a ModbusPlus or Ethernet address

depending on network_type. variable_name: Full variable name, for example

FunctionalPhysicalElementName_ControlModuleName_VariableName. data_type: Data type of the variable (for example BOOL, WORD, REAL and so on). variable_address: The state ram address of the variable. The format is Sxxxxx, that is the

segment 0,1,3 or 4 and the offset with five digits and leading zeros, for example 000010 or 400001.

initial_value: Initial value of the variable. The format corresponds to the data type of the variable (for example for BOOL it is 0 or 1, for REAL 1.23 and so on).

description: The description of the variable. It is composed as: description of variable - description of Control Module - description of Functional Physical Element .

1 plc_name 2 network_type 3 network_address

4 variable_name 5 data_type 6 variable_address

7 initial_value 8 description

33003669 09/2014 319

Page 320: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

320 33003669 09/2014

Page 321: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Unity Application Generator (UAG) 3.3 SP4

XML File Format

33003669 09/2014

Format of the XML File for Generic HMI

Appendix BFormat of the XML File for Generic HMI

XML File Format for Generic HMI

Introduction

The data in the XML file is contained in a hierarchical structure formed by named elements. Elements may have named attributes and child elements as shown in the following table.

NOTE: A plus sign (+) appended to an element name in the child elements column means there is 1 or more element, an asterisk sign (*) means there are 0 or more elements, a minus sign (-) means there is 0 or 1 element, otherwise there is exactly 1 element.

Elements

XML file format

Element Name Attribute Name Description of Attribute Value

Child Elements

generic_hmi_file version version of the file format file_header, content_header, physical_model, topological_model, control_module_type_libraries-

file_header company the string "Schneider Electric"

-

product the string "Unity Application Generator" followed by a version string

date_time date and time of generation

content the string "Generic HMI data"

content_header uag_project_file path and file name of the UAG project

-

physical_model - - physical_elements-

physical_elements - - physical_element*

33003669 09/2014 321

Page 322: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

XML File Format

physical_element name name of the physical element

physical_elements-, variables-, control_modules-

level level number of the physical element

level_name level name of the physical element

instance_name instance name of the physical element (i.e. not combined with an other element’s name)

control_module_container ability to contain control modules (according to the level’s definition in customization)If true, denotes a Functional Physical Element. One of the following strings: True or False.

variable_container ability to contain variables (according to the level’s definition in customization)If true, denotes a Functional Physical Element. One of the following strings: True or False.

variable_name_prefix optionalprefix for full variable names contained in this physical element (according to the name creation rule defined in customization)

variable_name_suffix optionalsuffix for full variable names contained in this physical element (according to the name creation rule defined in customization)

description description of the physical element

plc optional, name of the

Element Name Attribute Name Description of Attribute Value

Child Elements

322 33003669 09/2014associated PLC(available for Functional Physical Elements only)

Page 323: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

XML File Format

physical_element section optional, name of the PLC program section(available for Functional Physical Elements only)

physical_elements-, variables-, control_modules-

hmi optional, name of the associated HMI(available for Functional Physical Elements only)

controldomain optional, name of the HMI’s Control Domain(available for Functional Physical Elements only)

picture optional, name of the HMI picture for the Equipment Module(available for Functional Physical Elements only)

hmi_symbol_type optional, type of HMI symbol(available for instances of template types only)

hmi_symbol optional, name of HMI symbol(available for instances of template types only)

hmi_symbol_configuration optional, configuration type of HMI symbolone of the following strings: None, HmiSymbolOfMembers, HmiSymbolOfTemplate, PictureTemplate(available for instances of template types only)

template_type optional, name of template type(available for instances of template types only)

template_library optional, name of template library(available for instances of template types only)

variables - - variable *

Element Name Attribute Name Description of Attribute Value

Child Elements

33003669 09/2014 323

Page 324: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

XML File Format

variable name Either the full name for variables (according to the name creation rule defined in customization) or the element name for elements of structures or arrays (for example ".x" or "[1,1]", respectively).

variables-

instance_name instance name of the variable (i.e. not combined with an other element’s name)

data_type data type of the variable (for example BOOL, ANL_IN, MyStruct and so on)

connection_type one of the following strings: PLC_HMI, HMI or IO_PLC

in_out_type one of the following strings: IN, INOUT or OUT

parent_type type of the variable’s parent, that is, one of the following strings: physical_element, control_module or variable

description full description of the variable (according to the definition in customization)For example composed as follows: description of variable - description of Control Module - description of Functional Physical Element.

initial_value optional, initial value of the variable

update_initial_value optionalCorresponds to the Save attribute of variables in Unity Pro.

deadband_mode optional

Element Name Attribute Name Description of Attribute Value

Child Elements

324 33003669 09/2014dead band mode of a numeric variable (absolute/percentage)

Page 325: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

XML File Format

variable deadband_value optionalabsolute or percent portion that a numeric variable can change without the variable being updated in the system

variables-

address_segment optionalsegment part of the variable’s memory address in the PLC, that is, 0, 1, 3 or 4

address_offset optionaloffset part of the variable’s memory address in the PLC

address_bitrank optionalbit offset part of the variable’s memory address in the PLC

address_string optionalFor variables with connection type PLC_HMI: a string combining address segment and offset (e.g. %MW100). For variables with connection type IO_PLC: the topological address (e.g. %IW\1.1\2.3.1).

communication_frame optionalname of the communication frame the variable is assigned toCorresponds to the name of one of the hmi_communication_frame elements in the channel element.

bitfield_variable optional, full name of the corresponding variable of a bitfield definition

Element Name Attribute Name Description of Attribute Value

Child Elements

33003669 09/2014 325

Page 326: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

XML File Format

variable timeout_state optionalThe timeout state for variables with connection type IO_PLC: One of the following strings: Disabled, LastValue or UserDefined.

variables-

timeout_value optionalThe timeout value for variables with connection type IO_PLC and with a user-defined timeout state. A value according to the variable’s data type.

graphical_symbol optionalFor free variables with connection type PLC_HMI or HMI: one of the following strings: True or False

graphical_symbol_name optionalName of the graphical symbol to be used for the variable, if the attribute graphical_symbol is True.

command optionalone of the following strings: ViewOnly, Logic, Operator, Parameter, SetValue

access_level optional, one of the strings defined in the customization for access levels

raw_min optionalvariable’s minimum raw value (before any scaling takes place)

raw_max optionalvariable’s maximum raw value (before any scaling takes place)

scaling_min optional

Element Name Attribute Name Description of Attribute Value

Child Elements

326 33003669 09/2014variable’s minimum scaling value

Page 327: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

XML File Format

variable value_boundary_min optionalvariable’s minimum boundary for operator input

variables-

value_boundary_max optionalvariable’s maximum boundary for operator input

measurement_unit optionalvariable’s engineering unit (one of the strings defined in customization, for example %, m, Hz or 1/min)

display_format optionalvariable’s format for displaying numeric values (one of the strings defined in customization, for example 9999.9 or 99.9)

state0_text optionalfor boolean variables: text to be displayed in HMI if the value of the variable is 0

state1_text optionalfor boolean variables: text to be displayed in HMI if the value of the variable is 1

archive optionalDenotes whether the variable has to be archived. One of the following strings: No or Historic.

archive_name optionalone of the strings defined in the customization for archives

archive_location optionalThe archive location as defined in customization for the given archive

Element Name Attribute Name Description of Attribute Value

Child Elements

33003669 09/2014 327name.

Page 328: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

XML File Format

variable archive_sample_rate optionalrate for archiving the variable

variables-

archive_periode_value optionalarchive period as defined in customization for the given archive name

archive_periode_unit optionalarchive period unit as defined in customization for the given archive name

alarm optionalDenotes whether the variable’s alarms have to be active. One of the following strings: True or False.

alarm_group optionalone of the strings defined in the customization for alarm groups

alarm_count optionalnumber of alarms defined for the variable

alarm_operator1,alarm_operator2 ...

optionala string either for the comparison operators (EQ, NE, LT, GT, LE, and GE), for free expressions (free expression) or for bit operators (Bit 0, Bit 1 …)

Element Name Attribute Name Description of Attribute Value

Child Elements

328 33003669 09/2014

Page 329: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

XML File Format

variable alarm_limit1,alarm_limit2 ...

optionaleither a number according to the variable’s data type (e.g. 0 or 1 for boolean variables) or any string in case of free expression

variables-

alarm_priority1,alarm_priority2 ...

optionalone of the strings defined in the customization for alarm priorities

alarm_text1,alarm_text2 ...

optionaltext shown to the HMI operator in case of an indicated alarm

alarm_timer_mode1 optionala variable defining the alarm timer mode (no timer, variable, free expression)

alarm_timer1 optionaleither a variable providing PLC time or any string in case of free expression

free_property1, , free_property20

optionalany string specified by the user

control_modules - - control_module*

Element Name Attribute Name Description of Attribute Value

Child Elements

33003669 09/2014 329

Page 330: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

XML File Format

control_module name full name of the Control Module, for example MyEquipmentModule_MyControlModule.

variables-, links-, interlocks-

instance_name instance name of the control module (i.e. not combined with an other element’s name)

description description of the Control Module

type type of the Control Module as defined in the Control Module Type library

library Control Module Type library in which the Control Module is defined

variable_name_prefix optionalprefix for full variable names contained in this Control Module (according to the name creation rule defined in customization)

variable_name_suffix optionalsuffix for full variable names contained in this Control Module (according to the name creation rule defined in customization)

plc name of the associated PLC

hmi_symbol_type optionaltype of HMI symbol

template_control_module optional, name of Control Module in corresponding Template Type(available for instances of Template Types only)

links - - link*

Element Name Attribute Name Description of Attribute Value

Child Elements

330 33003669 09/2014

Page 331: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

XML File Format

link pin_name name of the input pin belonging to the current control module’s FFB

variable_name full name of the variable connected to the pin

description full description of the variable connected to the pin

interlocks - - interlocks*

interlock pin_name name of the interlock input pin belonging to the current control module’s FFB

interlock_conditions

raw_expression interlock logic connected to the pin, represented as a boolean expression containing placeholders for conditions further detailed in the interlock_condition elements

interlock_conditions - - interlock_condition*

Element Name Attribute Name Description of Attribute Value

Child Elements

33003669 09/2014 331

Page 332: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

XML File Format

interlock_condition ordinal_number ordinal number of the corresponding placeholder in the raw_expression element

operand1 variable or literal value used as the first operand in the condition

operand1_type type of the first operandone of the following strings: variable or literal

operator operator used for the conditionIt is empty if a single value is used in the condition or it is one of the following strings: EQ, NE, LT, GT, LE, or GE.

operand2 optional, variable or literal value used as the second operand in the condition

operand2_type optional, type of the second operandone of the following strings: variable or literal

description description of the condition

topological_model - - network_segments, data_servers, hmis, plcs

network_segments - - network_segment*

network_segment name name of the network segment

-

network_type network typevalid strings are ModbusPlus and Ethernet

subnetmask optional, subnet mask of the network segment for Ethernet networks

default_gateway optional, default gateway of the network segment for Ethernet networks

Element Name Attribute Name Description of Attribute Value

Child Elements

332 33003669 09/2014

Page 333: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

XML File Format

data_servers - - data_server*

data_server name name of the Data Server network_connections-

application_path path of the XML file generated for the Data Server

connection_timeout optional, network connection timeout in the form mm:ss.ms

network_connections - - network_connection*

network_connection ordinal_number ordinal number of the network connection

-

network_segment name of the network segment

network_address network address

hmis - - hmi*

hmi name name of the HMI controldomains, picture_groups

type type name of the HMI, e.g. „Generic HMI", „Monitor Pro", etc.

controldomains - - controldomain*

controldomain name name of the control domain

-

description optional, description of the control domain

picture_groups - - picture_group*

picture_group name name of the picture group

picture_groups-, pictures-

description description of the picture group

path string with the names of the current and all parent picture groups separated by "\"

pictures - - picture*

picture name name of the picture -

description description of the picture

plcs - - plc*

Element Name Attribute Name Description of Attribute Value

Child Elements

33003669 09/2014 333

Page 334: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

XML File Format

plc name name of the PLC address_ranges, racks, channels,plc_variables

description description of the PLC

project_name name of the generated PLC project

project_path path of the generated PLC project

plc_family one of the following strings: Unity/Quantum, Unity/Premium, Unity/M340 or Unity/M580

address_ranges - - address_range*

address_range type usage of the memoryFor PLC memory one of the following strings: HW Modules, HMI, Net Partner, PLC Communication, Reserve. For HW module memory the following string: Input/Output.

-

address_segment segment part of the State RAM address for variables in this address range, that is 0, 1, 3 or 4.

start_address start address of the address range

length length of the address range

actual_length optional, length of the used part of the address range

racks - - rack*

Element Name Attribute Name Description of Attribute Value

Child Elements

334 33003669 09/2014

Page 335: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

XML File Format

rack name name of the rack hw_modules

type type of the rack, i.e. part number of the rack

description optional, description of the rack

drop_number drop number of the rack

link_type rack’s link type, i.e. a string like: Local, Xbus, LocalM340, Local M580, Remote, EthIO, MBPIOLink0, DeviceMBP0, DeviceEth, FBSlave, ProfibusIO…

extension_rack_number extension number

network_segment optional, name of the network segment(available for ModbusI/O or ProfibusI/O only)

ip_address optional, IP address on the network specified in network_segment(available for ModbusIO or ProfibusIO only)

fieldbus_master_gateway optional, name of the master gateway(available for fieldbus slaves only)

fieldbus_address optional, fieldbus address(available for fieldbus slaves only)

hw_modules - - hw_module*

Element Name Attribute Name Description of Attribute Value

Child Elements

33003669 09/2014 335

Page 336: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

XML File Format

hw_module slot slot number of the HW module within the rack

network_connections-, address_ranges-, io_points-

category one of the following strings: Power Supply, CPU, Communication, Drop Head, Drop Slave, Digital In, Digital Out, Analog In, Analog Out, Digital In/Out, Analog In/Out, Experts

type part number of the HW module, e.g. 140-CPU-534-14

description description of the module type

ioscanner_repetitive_rate optional, repetitive rate for I/O Scanner entries in Unity Pro

mbp_link optionalFor modules connected to a MBPlus network a value of 0, 1 or 2.

io_points timeout_state optionaltimeout state for the module’s I/O pointsone of the following strings: Disabled, LastValue or UserDefined

io_point*

io_point ordinal_number ordinal number of the I/O point within the module

-

type input or output typeone of the following strings: IN, OUT

variable_name name of the variable assigned to this I/O point

channels - - channel*

Element Name Attribute Name Description of Attribute Value

Child Elements

336 33003669 09/2014

Page 337: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

XML File Format

channel name name of the channel communication_paths, hmi_communication_framescommunication_type Only data server

channels are included, so it’s the following string: data_server.

communication_partner name of the communication partner (i.e. the data server)

communication_paths - - communication_path+

communication_path ordinal_number number 1 or 2 -

plc_network_segment network segment to which the PLC is connected

plc_network_address network address of the PLC

partner_network_segment network segment to which the communication partner is connected

partner_network_address network address of the communication partner

global_path optional, bridge path between communication partner and PLC (only for ModbusPlus)

connection_timeout optional, network connection timeout in the format of mm:ss.ms

hmi_communication_frames

- - hmi_communication_frames*

Element Name Attribute Name Description of Attribute Value

Child Elements

33003669 09/2014 337

Page 338: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

XML File Format

hmi_communication_frame

name name of the communication frame as specified in customization

-

data_type one of the following strings: BOOL, WORD, DINT, REAL

frame_type one of the following strings: RD, EW, BW, UR, RD+EW

address_segment segment part of the PLC memory addresses of the variables, that is, 0, 1, 3 or 4

start_address optional, offset part of the start address

length optional, length of the communication frame, specified in bits for data type BOOL and in words otherwise

plc_variables - - plc_variable*

plc_variable name full variable name -

control_module_type_libraries

- - control_module_type_library*

control_module_type_library

name name of the library control_module_types

control_module_types - - control_module_type*

control_module_type name name of the Control Module Type

-

hmi_symbol_type optional, type of HMI symbol

hmi_symbol optional, name of HMI symbol

hmi_symbol_classid optional, class ID of an ActiveX HMI symbol

Element Name Attribute Name Description of Attribute Value

Child Elements

338 33003669 09/2014

Page 339: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Unity Application Generator (UAG) 3.3 SP4

Synchronization of Projects

33003669 09/2014

Synchronization of Projects

Appendix CSynchronization of Projects

Synchronization with Timestamp.exe

Introduction

The timestamp.exe tool allows you to synchronize the timestamp of PLC (Unity) projects with the according values saved in the UAG Project. The timestamp of a PLC project is updated after every generation of the project. Corresponding fields in UAG database are also updated so that the PLC projects and UAG project are consistent.

If the timestamp in the PLC project has been changed for any reason, for example after export and import of the project in Unity Pro, it would not be possible to generate the project incrementally. timestamp.exe bypasses this situation, allowing manual synchronization of the PLC project and the UAG project.

The timestamp.exe is installed with you Unity Application Generator. Any changes of the UAG project timestamp will be logged in the change history table. An old and the new timestamp value will be saved.

You will find the timestamp.exe under \Schneider Electric\Unity Application Generator\timestamp.exe.

The following figure shows the start dialog of the timestamp.exe:

33003669 09/2014 339

Page 340: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Synchronization of Projects

340 33003669 09/2014

Page 341: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Unity Application Generator (UAG) 3.3 SP4

Additional Information

33003669 09/2014

Additional Information

Appendix DAdditional Information

Commandline Arguments

Introduction

Using commandline arguments you have the possibility to: login create a project open a project import or export project data

Usage

UnityAppGen project_file [-l user=name,password=password][-c customization_file | -i import_file | -e export_file][-x][-h]

Where project_file is the full file specification of project file to open.

Optional arguments are shown in square brackets ([]) and alternative arguments are separated with a vertical bar (|).

You can use the options either with - or with /.

For example to create an empty project you can enter: UnityAppGen <project_file> -c <customization_file> or UnityAppGen <project_file> /c <customization_file>

Options

Instead of -h you can also use /help or /? to open the Help for command line arguments window.

Option Description

-l login with user name and password

-c create (but do not open) new project using customization file and save as specified in project_file

-i open project file and start import of import file

-e open project file and start export of export file

-x open project file in exclusive mode

-h show help text for command line arguments

33003669 09/2014 341

Page 342: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Additional Information

Diagnostic Codes

Diagnostic Code Description

0 No detected error

1 Unspecified detected error

2 Missing argument

3 Invalid argument

4 File not found

5 Detected error in opening file

6 Detected error in creating file

7 Login not operational

342 33003669 09/2014

Page 343: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Unity Application Generator (UAG) 3.3 SP4

Glossary

33003669 09/2014

Glossary

A

ActiveXActiveX is an open specification designed to govern how software components interact. ActiveX objects are pre-built, reusable software components that have interactive capabilities. An ActiveX is a programming construct that combines data (properties) with functions (methods) for using the data. Graphic objects in the HMI representing the Control Modules of Unity Application Generator are built as ActiveX controls.

AdministratorPerson or persons responsible to customize Unity Application Generator according to the companies requirements, e.g. naming conventions, documentation tools. The administrator is responsible for the user/user group administration.

Alarm ViewOverview mimic, which can be accessed via all alarm messages assigned to the alarm view.

AnalyzerPart of Unity Application Generator that checks the formal validity of the total design.

AreaA component of manufacturing site that is identified by physical, geographical, or logical segmentation within the site.

B

Batch The material that is being produced or that has been produced by a single execution of a batch

process. An entity that represents the production of a material at any point in the process.

Batch means both the material made by and during the process and also an entity that represents the production of that material. Batch is used as an abstract contraction of the words "the production of a batch".

33003669 09/2014 343

Page 344: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Glossary

C

ChannelA Channel describes the following: To which objects of the control system the PLC communicates Via which communication path the communication takes place Via which alternative path the communication takes place Which variables have to be exchanged

The communication is done through a PLC. This means, 1 communication partner in a Channel is a PLC.

Control(Process control) The control activity that includes the control functions needed to provide sequential, regulatory, and discrete control and to gather and display data (defined in S88).

Control DomainLogical group of process elements which are controlled by an operator.

Assigned to a Control Domain are Operator screens Access rights Alarms

Control EngineerSpecialist in all aspects of a control system like PLC, HMI and networking rather than the process itself.

Control ModuleIndividual or collections of sensors and actuators and associated processing equipment that from a control view point is operated as a single entity, e.g. motor, valve, level switch, alarm light.

A Control Module is derived from a Control Module Type (SCoD).

Control Module TypeControl Module Types are generic types of Control Modules, which are tested and validated and can be re-used as often as needed.

Control Module Type VariableControl Module Type variables are related to a Control Module Type. They are automatically generates for each instance of a Control Module Type.

CSV FileA CSV (comma separated value) file is an ASCII file containing a number of lines. Each line of a CSV file contains a number of entries, separated by a separator, for example a comma or a semicolon or a tab. CSV files can be used for exchanging data between different software programmes. Unity Application Generator allow import and export of CSV files.

344 33003669 09/2014

Page 345: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Glossary

D

Data ServerServer for all for all HMI related data (e.g. variables).

E

Equipment ModuleA functional group of Control Modules that can carry out a finite number of specific minor processing activities.

An Equipment Module is typically centered around a piece of process equipment (a weigh tank, a process heater, a scrubber, etc.) or process activities e.g. dosing and weighing.

F

FBDFunction Block diagram (FBD)

One or several sections containing graphically represented networks consisting of functions, Function Blocks, and links.

Free Control ModuleA Free Control Module is a Control Module which is not a generic Control Module Type. It does not define any logic for the PLC nor any predefined functionality for the HMI. Free Control Modules can have free variables assigned to it. They are typically used for process hardware for which no appropriate Control Module Type is available.

Free VariableFree variables are variables which are manually defined for

Functional Physical Elements Control Modules

Function Block (instance) (FB)A Function Block is a program organization unit which provides values for its outputs and internal variable(s) according to the algorithms defined in its Function Block type description, when executed as a specific instance. All values of the outputs and internal variables of a specific Function Block instance are maintained from 1 invocation of the Function Block to the next. Therefore, multiple calls of the same Function Block instance with the same arguments (values of input parameters) do not necessarily yield the same output value(s).

Each Function Block instance is graphically displayed by a rectangular block symbol. The name of the Function Block type is centered on top, inside the rectangle. The name of the Function Block instance is also on top, but outside the rectangle. It is automatically generated when building an instance, and should not be changed by the user (if the FB was generated by Unity Application Generator). Inputs are shown to the left, outputs to the right of the block. The names of the formal input/output parameters are shown inside the rectangle at the corresponding input/output points.

33003669 09/2014 345

Page 346: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Glossary

G

Generic ModuleGeneric modules are user defined hardware modules which are not known by name in Unity Pro. The administrator adds them to the list of modules in the customization. He must specify the number of inputs and outputs, the number of 0x (%M), 1x (%I), 3x (%IW) and 4x (%MW) registers consumed and the possible rack type = Generic. Generic modules can only be configured in generic racks and are NOT generated. They can not be configured in Quantum/Premium racks and are not entered in the Unity Pro I/O mapping. The specifications made are only used for the reservation of state RAM addresses and for the addresses of the I/O variables.

Global Network PathsEarlier term for Routing Paths.

H

HMIHMI = Human Machine Interface. Also called supervisory system. Through the HMI the operator controls the production process.

I

Instrument ListList of all Instruments used in a control project.

InstrumentsThe sensors and actuators used by the PLC to measure and modify the physical and chemical characteristics of the process.

M

Memory MapperPart of Unity Application Generator. Generates all addresses of variables, IO definitions, communication parameters etc. for both, PLC and HMI consistently. The Memory Mapper can be run during the design procedure for checking the addressing.

346 33003669 09/2014

Page 347: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Glossary

N

Net PartnerA Net Partner is a node on the network that communicates with the PLC but is neither a Schneider PLC, an HMI or a Data Server. Examples are Magelis hand held panels, PLCs of different make, an intelligent sensor or actuator. It can communicate via Modbus Plus or Ethernet with other devices therefore the communication with the Net Partner is defined in Unity Application Generator.

NetworkA network is the interconnection of units along a shared data path that are communicating with each other via a common protocol.

Network NodeA Network Node is an object in the Topological Model and consists of Net Partners and Other Nodes.

Network SegmentNetworks are divided in segments. This reduces the data transfer load per segment because only the data relevant for devices of the respective segment are transmitted on a Network Segment.

O

OLEObject linking and embedding

OperatorPerson or persons responsible for using the run-time process control system in order to control the process.

Other NodeAn Other Node is a node on the network that communicates with the PLC but is neither a Schneider PLC, an HMI, a Data Server nor a Net Partner. Examples are Operator PCs or intelligent drivers. It can communicate via Modbus Plus or Ethernet with other devices, but the communication with the node is not defined in Unity Application Generator. It is used to reserve a network address and displaying the node in the Topological Viewer, only.

33003669 09/2014 347

Page 348: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Glossary

P

P&IDPipework and Instrument Drawing

Physical ElementPhysical Element is a generic term for objects like Area, Process Cell, Unit and Equipment Module as defined in the Physical Model of ISA S88.01.

There are 2 kinds of Physical Elements in UAG: Structural Physical Elements

structure the automation facilities of a site. Structural Physical Elements can contain other Physical Elements.

Functional Physical Elementscorrespond to functional entities as defined for the Equipment Modules in the Physical Model of ISA S88.01.As opposed to ISA S88.01, they can be used for each hierarchy level of the Physical Model in UAG.Functional Physical Elements can contain other Physical Elements, Control Modules and Variables.

Physical Model Defines the hierarchy of the Physical Elements used in the process.

PLCProgrammable Logic Controller is used to automate and control a process

ProcedureThe strategy for carrying out a process.

ProcessA sequence of chemical, physical, or biological activities for the conversion, transport, or storage of material or energy (defined in S88).

Process CellA logical grouping of Equipment Modules that includes the Equipment Modules required for production of 1 or more batches. It defines the span of logical control of 1 set of process Equipment Modules within e.g. an Area (defined in S88).

Process controlThe control activity that includes the control functions needed to provide sequential, regulatory, and discrete control and to gather and display data (defined in S88).

Process EngineerSpecialist in all aspects of process which has to be controlled rather than the control system.

Process Objects An element of processing equipment which is represented in the PLC and supervisory control (HMI) with all of its attributes.

348 33003669 09/2014

Page 349: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Glossary

R

Routing PathRouting Paths define the bridges and their addresses which interconnect different Network Segments. (In earlier versions a Routing Path was called global network path.)

S

SCADASupervisory Control and Data Acquisition.

In iFIX an HMI system is called SCADA system, a Data Server is called SCADA host.

SiteLogical unit to structure the process. Highest level element of the Physical Model of Unity Application Generator.

Supervisory Control (HMI)Allows an operator to manage the running of the process via the process control system

System AdministratorPerson or persons responsible for customizing Unity Application Generator according to the project needs.

T

Topological ModelIn Unity Application Generator the Topological Model defines the architecture of the control system. It comprises the definition of the PLC hardware, HMIs and networks.

Topological ViewerGraphical representation of the Topological Model in a separate screen on Unity Application Generator.

Type-less Control ModuleA type-less Control Module is a Control Module with no type assigned. It is neither a Control Module Type nor a Free Control Module.

With type-less Control Modules the process engineer has the possibility to configure a Control Module in the Physical Model tree even, if he is unclear about the specific implementation.

The control engineer can assign a type-less Control Module to a PLC. As long as the type stays undefined, nothing is generated, but the Analyzer prints a message. A type can be assigned at any time throughout the development process of the project. Once the type is defined, the properties and variables of this Control Module can be defined. It is not possible to change back to a type-less Control Module once the type has been assigned.

33003669 09/2014 349

Page 350: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Glossary

U

UnitA collection of associated Control Modules and/or Equipment Modules and other process equipment in which 1 or more major processing activities can be conducted (defined in S88).

V

VariableIn general a variable is a free definable parameter.

Unity Application Generator distinguishes two major variable types Control Module Type variables Free variables

View NodeThe term View node is used in iFIX for an HMI. It corresponds to the term HMI in Unity Application Generator.

X

XML FileXML (Extensible Markup Language) is a general-purpose specification for creating custom markup languages.

XML is recommended by the World Wide Web Consortium (W3C). It is a fee-free open standard. The recommendation specifies lexical grammar and parsing requirements (www.w3.org).

XML files can be used for exchanging data between different software programmes. Unity Application Generator allows import and export of XML files.

350 33003669 09/2014

Page 351: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Unity Application Generator (UAG) 3.3 SP4

Index

33003669 09/2014

Index

Symbols[generated code

Discrete Configuration (Premium + M340 only), 267

Aaccess level

default values for access levels, 80ActiveX

duplicates of SCoD ActiveX, 81add user defined module

dialog box, 135additional information, 341Alarm Area

Alarm Areas configuration, 79alarm configuration

Vijeo Citect, 36Alarm Group, 57Alarming, 61analysis options

setting of, 155any, 54application

steps to deploy the generated application to the iFIX nodes, 85

archiveconfiguration, 66

archive configuration, 69Archive Name, 57archive name

customization, 125, 125archiving, 65, 65

Bbackup node, 87block write, 54branching, 72BW, 54

33003669 09/2014

CChange History, 156change tracking, 156Changes for UAG

SCoD variable value propagation, 233Client Builder

mimics, 72Client.zip, 71

steps for Client.zip, 71coil, 54commandline arguments, 341communication

generated code, 262communication configuration

Vijeo Citect, 43Communication Frame, 57Control Domain, 61Control Module

deleted Control Module, 81generation for a Control Module, 250

Control Modulesgenerated code, 259

CSV fileNet Partner variables, 319

Customization, 97customization

access level, 106alarm priority, 106changing of, 142data, 106, 122data type, 106display formats, 106general options, 102

CustomizationGeneric HMI, 88

351

Page 352: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Index

customizationmeasurement unit and groups, 106name creation rules, 105naming conventions, 105, 113of Unity Application Generator, 98paths, 103physical model/levels, 104PLC, 106, 127preferences, 102user defined modules, 135user defined modules - overview, 131

customization editorworking with, 100

Ddata

customization, 106, 122data point logger, 65Data Point Logger

configuration, 68data type

data type conversion for iFIX driver, 84Database Logger, 65

configuration, 66database logging information table, 68DBLCHISTMBX, 67Default Server Application, 50defining name creation rules, 115defining the physical model, 107Discrete Configuration (Premium + M340 only)

[generated code, 267DPLOGHISTMBX, 68driver

Unity Application Generator and iFIX driv-ers, 84

Eenvironment variables

paths, 103EW, 54exception write, 54

352

Export FormatGeneric HMI, 88

Ffieldbus

actions, 148add fieldbus module, 148customization editor, 144data size, 146I/O Map, 150modify fieldbus module, 149module catalog, 144Representation of Data for Profibus, 146

Frame Type Name, 58free variable

symbol, 72Functional Physical Element

generated code, 259functional physical element

generation, 249

Ggeneral options

customization, 102generate

steps to generate a new iFIX application, 82steps to generate an iFIX application in-crementally, 83

generated codecommunication, 262Control Modules, 259Functional Physical Element, 259iFIX database objects, 301iFIX driver configuration from driver point of view, 313iFIX driver configuration from Unity Appli-cation Generator point of view, 311iFIX pictures, 306iFIX screens, 300initialization (Quantum only), 265interlocks, 259

33003669 09/2014

Page 353: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Index

Generated codeMonitor Pro database objects, 288Monitor Pro pictures, 292Monitor Pro screens, 287

generated codeNet Partner variables, 319overview, 238scaling of analog values (Quantum only), 266Unity Pro animation table, 258Unity Pro operator screens, 257Unity Pro PLC configuration, 254Unity Pro variables, 255variables for iFIX, 298

Generated codeVariables for Monitor Pro, 285Variables for Vijeo Citect, 271

generated codeVijeo Citect database objects, 274

Generated codeVijeo Citect pages, 273, 280

Generation, 269generation

functional physical element, 249manual configurations before generation for iFIX, 79

GenerationMonitor Pro, 283

generationnet partner, 318structural physical element, 249Unity Pro, 240

generation generic HMI, 315iFIX, 296

Generation for Unity Proresults from general project settings, 243

generation for Unity Proresults from settings for Physical Model, 249

generation for Unity Pro results from settings for Topological Mod-el, 244

generation optionssetting of, 155

33003669 09/2014

generator setupVijeo Citect, 17

generic HMI, 88Generic HMI

Customization, 88Export Format, 88

generic HMIgeneration , 315using Unity Application Generator with a generic HMI, 88XML file format, 321

generic moduledefinition, 131

Generic moduleHow to define a generic module with the Unity Application customization editor, 133

Hhandling existing projects

Vijeo Citect, 29HMI

supported HMIs and their setup, 15using Unity Application Generator with a generic HMI, 88

HMI Communication, 90HREG, 54

II/O map, 149I/O Translator Dataset Definition, 59I/O Translator Protocol Driver Definition, 59iFIX

configuring iFIX redundancy, 87generation , 296iFIX and Unity Application Generator, 76manual configurations before generation for iFIX, 79steps to configure iFIX for the use with Unity Application Generator, 78steps to deploy the generated application to the iFIX nodes, 85

353

Page 354: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Index

steps to generate a new iFIX application, 82steps to generate an iFIX application in-crementally, 83steps to run an existing Unity Application Generator project, 86Unity Application Generator and iFIX driv-ers, 84

iFIX database objectsgenerated code for iFIX database objects, 301

iFIX driver configurationgenerated values for a channel, 313generated values for a datablock, 314generated values for a device, 313generation for a Channel, 311generation for a Data Server, 311

iFIX driver configuration from driver point of view

generated code, 313iFIX driver configuration from Unity Applica-tion Generator point of view

generated code, 311iFIX node

terminology in iFIX, 85iFIX pictures

generated code for iFIX pictures, 306generation for a control domain, 306generation for a Control Module, 308generation for a Functional Physical Ele-ment, 307generation for a PLC, 307Generation for a Structural Physical Ele-ment, 307generation for a variable, 309generation for an HMI, 306generation for an Interlock, 309

iFIX screensgenerated code for iFIX screens, 300

iFIX variablesgenerated code for iFIX variables, 298

initialization (Quantum only)generated code, 265

interlock definitiongeneration for an interlock definition, 250

354

interlocksgenerated code, 259

Ioxlator Tag Definition, 60

LLAN redundancy, 87libraries

Template Libraries, 161Libraries tree of UAG

general, 173logging, 65

Mmailbox, 65Mailbox

Monitor Pro, 50management

of versions, 156manual steps after generation

Vijeo Citect, 17manual steps before generation

Vijeo Citect, 17Memory Mapper

how it is working, 89Modbus TCP/IP

Modbus TCP I/P I/O driver, 80Modbus TCP/IP Driver Dataset Definition, 59Modbus TCP/IP Driver Device Definition, 58ModConnect partner module

definition, 131MODTIOMbx, 59

33003669 09/2014

Page 355: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Index

Monitor ProAlarming, 61archiving, 65client application, 71Configuration Explorer, 53data conversion, 54Data Server, 50data types, 54Generation, 283Generation Mode, 53Incremental Generation, 53logging, 65Mailbox, 50Monitor Pro and Unity Application Gener-ator, 48New Generation, 53Rules for generation, 53Setup, 50Tag, 50

Monitor Pro database objectsGenerated code for Monitor Pro database objects, 288

Monitor Pro picturesGenerated code for Monitor Pro pictures, 292Generation for a control domain, 292Generation for a Control Module, 293Generation for a Functional Physical Ele-ment, 293Generation for a PLC, 292Generation for a Structural Physical Ele-ment, 293Generation for a variable, 295Generation for an HMI, 292

Monitor Pro screensGenerated code for Monitor Pro screens, 287

Monitor Pro variablesGenerated code for Monitor Pro variables, 285

33003669 09/2014

Nname creation rules

customization, 105defining, 115

net partnergeneration , 318

Net Partner variablesCSV file, 319

Ppage generation

Vijeo Citect, 46paths

customization, 103relative, 103system environment variables, 103

physical modeldefining, 107

physical model/levelscustomization, 104

PLCcustomization, 127

PLC configuration, 254preferences

customization, 102primary node, 87Profibus

Representation of Data, 146project

maintenance, 154steps to run an existing Unity Application Generator project, 86

project documentationreport generator, 159

project generationVijeo Citect, 17

Project Maintenance, 97provided style sheet, 316

355

Page 356: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Index

RRD, 54read data, 54redundancy

configuring iFIX redundancy, 87LAN redundancy, 87protection against incorrect functioning of NOE module, 84

relativepaths, 103

remote nodes, 80repair of project database

troubleshooting, 160report generator

project documentation, 159results from general project settings

Generation for Unity Pro, 243results from settings for Physical Model

generation for Unity Pro , 249results from settings for Topological Model

generation for a HW module, 245generation for a PLC - PLC Channel, 246generation for a PLC - PLC Channel - oth-er objects, 247generation for PLC, 244generation for Unity Pro , 244

runsteps to run an existing Unity Application Generator project, 86

SSCADA node

terminology in iFIX, 85scaling of analog values (Quantum only)

generated code, 266Security Area

Security Area configuration, 79structural physical element

generation, 249style sheet

provided, 316symbol

free variable, 72synchronization, 339

356

TTag

Monitor Pro, 50TAGDATA, 68, 68Template instance modification, 225Template Libraries, 161

add Control Module to Template Type, 185associating HMI symbol, 184associating picture template, 184create Template Type instance drag-and-drop, 210create Template Type instances context menu, 207creating Template Types, 183creation, 164creation in Customization Editor, 165creation in UAG, 170disconnect Template Type instances, 230general information, 162importing Template Types, 200instance modification general, 226instance modifications allowed, 227instance modifications not allowed, 228Libraries tree of UAG, 172Libraries tree of UAG general, 173modify Control Module names of In-stance, 229name creation rules for Template Types, 196naming convention for Template Types, 196naming convention Template instances, 204propagating Template Type modifica-tions, 221saving Template Type modifications, 220Template instance modification, 225Template Library node, 174Template Type basic modification, 214Template Type creation, 181Template Type creation general, 182Template Type free variables, 195Template Type from a Functional Physi-

33003669 09/2014

Page 357: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Index

cal Element, 197Template Type from a Template Type, 199Template Type instance properties, 211Template Type instantiation, 201Template Type instantiation general, 202Template Type interlocks, 195Template Type links, 195Template Type modification, 212Template Type node, 179Template Type other modifications, 215, 216Template Type properties, 188Type modification general, 213

Template Library node, 174Template Type

add Control Module, 185adding free variables, 195adding interlocks, 195adding links, 195adding properties, 188associating HMI symbol, 184associating picture template, 184basic modification, 214Control Modules modification, 215deletion, 216free variables modification, 216from a Functional Physical Element, 197from an existing Template Type, 199importing, 200interlocks modification, 216links modification, 216name creation rules, 196naming convention, 196node, 179propagating modifications, 221properties modification, 216saving modifications, 220

Template Type creation, 181, 183general, 182

33003669 09/2014

Template Type instance in Physical Model tree, 211create by drag-and-drop, 210create context menu, 207disconnect, 230modifications allowed, 227modifications not allowed, 228modify Control Module names, 229viewing properties, 211

Template Type instance modificationgeneral, 226

Template Type instancesnaming convention, 204

Template Type instantiation, 201general, 202

Template Type modification, 212general, 213

timestamp.exe, 339troubleshooting

repair of project database, 160

UUnity Pro

generation, 240virtual connected mode, 242

Unity Pro animation tablegenerated code, 258

Unity Pro operator screensgenerated code, 257

Unity Pro PLC configurationgenerated code, 254

Unity Pro variablesgenerated code, 255

unsolicited read, 54UR, 54user defined module

dialog box, 135user defined modules

overview, 131

357

Page 358: Unity Application Generator (UAG) 3.3 SP4 - a ... · Schneider Electric Vijeo Citect 6.10, 7.0, 7.10, 7.20, 7.30, 7.40, and 7.40 SP1 Wonderware ArchestrA 2012 R2 (not supported for

Index

Vvariable

generation for a variable, 252variable generation

Vijeo Citect, 31version management, 156View node

terminology in iFIX, 85Vijeo Citect

alarm configuration, 36communication configuration, 43Generation, 269generator setup, 17handling existing projects, 29manual steps after generation, 17manual steps before generation, 17page generation, 46project generation, 17variable generation, 31Vijeo Citect and Unity Application Gener-ator, 16

Vijeo Citect database objectsgenerated code for Vijeo Citect database objects, 274

Vijeo Citect pagesGenerated code for, 280Generated code for Vijeo Citect pages, 273Generation for a control domain, 280Generation for a Control Module, 281Generation for a Functional Physical Ele-ment, 281Generation for a picture, 280Generation for a variable, 282Generation for an HMI, 280

Vijeo Citect variablesGenerated code for Vijeo Citect variables, 271

virtual connected modeUnity Pro, 242

XXML file

file format, 321

358

XSLstyle sheet, 316

33003669 09/2014